【发布时间】:2012-11-01 02:24:42
【问题描述】:
我正在为具有 79,000 个观测值的时间序列生成大量滞后变量(实际上是 365 个)。
我目前在数据框OrdersData 中有一个名为prospectdrops 的列。我先把它转换成zoo格式使用lag()函数:
prospectdrops<-zoo(OrdersData$prospectdrop)
然后我执行for循环:
for (i in 1:365){
prospectdrops[paste("lag",i,"day",sep="")] <- lag(prospectdrops,i*24,na.pad=TRUE)
}
然后我不得不再次使用 cbind 循环来绑定它们,为 data.frame() 做准备
for (i in 1:365){
cbind(prospectdrops, prospectdrops[paste("lag",i,"day",sep="")])
}
可以理解,R 中的 for 循环函数需要很长时间。我知道“应用”可能是答案,但在函数描述中看不到直接比较器。有什么想法吗?
【问题讨论】:
标签: r time-series zoo