Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/76.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在For循环中使用window()函数?(右)_R_For Loop - Fatal编程技术网

如何在For循环中使用window()函数?(右)

如何在For循环中使用window()函数?(右),r,for-loop,R,For Loop,我想创建一个时间序列的滚动窗口。总样本长度为756个观察值,我想创建长度为260个观察值的496个窗口: 第一窗口:1-260 第二窗口:2-261 最后一个窗口:496-755我将使用rollapply,假设您想要在滚动窗口上引入您想要应用的特定函数(例如平均值) 注意,如果您想要与原始数据相同的长度,显然必须在开始时添加Nas,200是宽度,因此在您的情况下是260。我尝试了数据[I:260+I-1],但它给了我错误数据[I:260+I-1,]非常接近。您可能需要数据[i:(260+i-1)

我想创建一个时间序列的滚动窗口。总样本长度为756个观察值,我想创建长度为260个观察值的496个窗口:

第一窗口:1-260

第二窗口:2-261


最后一个窗口:496-755

我将使用rollapply,假设您想要在滚动窗口上引入您想要应用的特定函数(例如平均值)


注意,如果您想要与原始数据相同的长度,显然必须在开始时添加Nas,200是宽度,因此在您的情况下是260。

我尝试了数据[I:260+I-1],但它给了我错误
数据[I:260+I-1,]
非常接近。您可能需要
数据[i:(260+i-1),]
感谢您的快速响应。问题是R在数学函数中将“i”识别为非数值参数。我还尝试了window(data,start=i,end=260+i-1)命令。但是,这给了我奇怪的结果如果您想在开始时添加NAs,请使用
library(zoo);rollappyr(1:1000260,均值,fill=NA)
或者如果您希望在开始时使用部分均值
rollappyr(1:1000260,均值,partial=TRUE)
library(zoo)
rollapply(c(1:1000),200,mean)