我正在尝试计算移动窗口的一些统计数据,并在动物园包中使用rollapply.我的问题是如何让rollapply将该函数应用于前面的n个观察值而不是当前观察值和前面的n-1个观察值,因为右对齐似乎可以.
require(zoo)
z <- data.frame(x1=11:111, x2=111:211, x3=as.Date(31:131))#generate data
output<-data.frame(dates=z$x3,
rollapply(z[,1:2],by.column=TRUE, 5, max, fill=NA, align='right'))
Run Code Online (Sandbox Code Playgroud)
我有一个预感,这是由回答?rollapply"如果width是一个普通的数字向量,它的元素被认为是与align一起解释的宽度,而如果width是一个列表,它的组件被视为偏移.在上面的例子中,如果宽度为1,然后宽度为每个第s点再循环.如果width是列表,则其组件表示整数偏移,使得列表的第i个分量引用位置i + width [[i]]的时间点".但是我不知道R代码意味着什么,没有提供任何例子.
没关系,我破译了'帮助'.添加参数width,以rollapply这样的:
width=list(-1:-5)
Run Code Online (Sandbox Code Playgroud)
完成它.
| 归档时间: |
|
| 查看次数: |
3658 次 |
| 最近记录: |