我正在寻找创建cumsum()
和TTR::runSum()
的混合体,其中cumSum()
一直运行到预先指定数量的数据点,此时它的行为更像{{1} 1}}
例如:
runSum()
有没有办法让DesiredResult不需要与NAs一起完成?
答案 0 :(得分:2)
这就是partial=TRUE
的{{1}}参数。在这里,我们使用rollapplyr
以及sum
和sd
来显示此信息。 (请注意,一个值的IQR
是NA,我们选择IQR,因为它是可以为标量计算的传播度量,尽管在这种情况下它总是为0。)
sd
答案 1 :(得分:1)
以下是三种选择。
n <- 3
rowSums(embed(c(rep(0, n - 1), data), n)) # base R
# [1] 1 3 6 6 6 6
library(TTR)
runSum(c(rep(0, n - 1), data), n = n)
# [1] NA NA 1 3 6 6 6 6 # na.omit fixes the beginning
library(zoo)
rollsum(c(rep(0, n - 1), data), k = 3, align = "right")
# [1] 1 3 6 6 6 6