這裏是一個示例df,我希望計算移動窗口上的累積和。在R中創建一個移動窗口cumsum
d <- data.frame(y = 1:10)
從以前suggestions,我能夠進行滑動窗口cumsum,使用下面的腳本(感謝nograpes):
size <- 2 # size of window
len <- nrow(d) - size +1 # number of sliding windows to perform
sumsmatrix <- apply(d, 2, function(x)
cumsum(x)[size:nrow(d)] - c(0,cumsum(x)[1:(len-1)]))
,並給出了下面的輸出:
y
3
5
7
9
11
13
15
17
19
我的要求是通過移動窗口而不是滑動來執行cumsum。比如把我的窗口大小爲2,我想計算列的前兩行的cumsum,然後移動到第3和計算第三和第四等..
所需的輸出:
y
1
3
3
7
5
11
7
15
9
19
如何調整腳本以適合我的需求?