我试图获得过去 N 天的滚动总和,而不包括 NA。使用此示例 df:
myVec <- data.frame(myVec = c(7,2,4,5,1,3,2,9))
我知道rollsumr使用这种方法的函数:
library(zoo)
rollsumr(myVec$myVec, k = 3, fill = NA)
Run Code Online (Sandbox Code Playgroud)
产生以下输出:
NA NA 13 11 10 9 6 14但是我不希望领先的 NA 占据这些位置。我希望第一个位置是第一个索引,第二个位置是第一个+第二个,依此类推,直到Nth到达看起来像7 9 13 11 10 9 6 14最终结果的位置。
N如果我的日子很短,我有一种方法可以使用 for 循环进行迭代,但是如果我的滚动总和N为 50,有 100 行,我就必须为前 50 天的每一天单独建立索引。因此,我认为有一种更简单、更有效的方法来实现这一目标。