【发布时间】:2018-03-18 01:04:17
【问题描述】:
我正在寻找一种方法来计算像 here 这样的观察结果,但能够根据特定观察结果更改标准(移动计数)。
例如 - 计算大于特定观测值的 mag 观测值(从最后 50 次开始)。 我的代码:
rollapplyr(zoo(mag),50,function(i){sum(mag>i)},partial=T,by.column=F,fill=NA))
此代码采用最后 50 次观测的平均 mag 并计算高于该平均值的观测数(在整个数据集中)。
我错过了什么?
也许在这里使用 rollapply 不是这种情况?
总结一下:
1.根据具体的行值计数
2. 只计算最后 50 个观察值(而不是整个数据列)。
【问题讨论】:
-
第一个问题是您的函数中的
i是“窗口化”数据和mag,正如您所说,在整个列中。所以代码肯定不是你上面说的。另外,没有示例数据和预期输出,如果可以,请添加。