【发布时间】:2015-10-07 13:30:07
【问题描述】:
我想获得我拥有的每个数字变量的滚动平均值。使用 data.table 包,我知道如何计算单个变量。但是我应该如何修改代码以便它可以一次处理多个变量,而不是修改变量名并重复这个过程几次?谢谢。
假设我还有其他名为“V2”、“V3”和“V4”的数值变量。
require(data.table)
setDT(data)
setkey(data,Receptor,date)
data[ , `:=` ('RollConc' = rollmean(AvgConc, 48, align="left", na.pad=TRUE)) , by=Receptor]
可以在以下位置找到我的示例数据的副本: https://drive.google.com/file/d/0B86_a8ltyoL3OE9KTUstYmRRbFk/view?usp=sharing
我想获得每个受体的“AvgConc”、“TotDep”、“DryDep”和“WetDep”的 5 小时滚动平均值。
【问题讨论】:
-
请举个例子
data -
样本数据已上传。谢谢。
-
谢谢,但我有下载数据的限制。有人会尝试的。
-
谢谢!效果很好。
-
无论如何添加一个数字变量“事件”来标记每个受体的每个滚动平均值计算?例如,对于 Receptor 1,第一个滚动平均值将标记为 Event[1],最后计算的滚动平均值将是 Event[n]?而对于Receptor 2,rollingmeans也会被标记为Event j in 1 to length[rollingmean]
标签: r data.table moving-average