首页 > 解决方案 > 转换 for 循环以应用族函数以获得更好的性能

问题描述

下面我预测未来 30 天。如果输入数据约为 100k,则 for 循环非常慢(大约需要 2 小时)。使用for循环的代码如下。

ns<-ncol(TS) # count number of columns to run the loop

output<-matrix(NA,nrow=30,ncol=ns) 

for (i in 2:ns)
{   
  output[,i]<- forecast(auto.arima(TS[,i],allowmean = T,D=1),h=30 )$mean 
  i=i+1
}

我尝试如下使用 lapply 但运行时间保持不变。

lapply(TS, function(x) forecast(auto.arima(x,allowmean = T,D=1),h=30 ))

我可以使用其他功能/方法来提高性能吗?

标签: rsapplymapply

解决方案


推荐阅读