如何解决将ARIMA预测结果导出到Excel文件中
我需要将Arima预测结果存储到Excel文件中,该文件应包含第一列作为帐户,该帐户来自不同的变量以及该特定帐户的预测数据框。 以下是我的代码:
df <- read.csv("dataset.csv")
library (tseries)
library (forecast)
loopvec <- c(unique(df$account_number))
for (loopitem in loopvec){
df2 <- subset(df,account_number==loopitem)
x = ts(df2$amount,start = c(2015,1),end = c(2020,12),frequency =
12)
arima1 = auto.arima(x)
forecast1 = forecast(arima1,h = 1)
write.table(forecast1,file = "Forecast_Results.csv",col.names=NA,append = T)
write.table(loopitem,file = "accountnumbers.csv",append =
T)
}
我想将这些结果写在一个excel文件中,如下所示:
`Account# Month Point Forecast Lo.80 Hi.80 Lo.95 Hi.95
A July 2019 100 80 83 102 114
A 201902 120 95 102 127 138
A 201903 135 110 117 142 158
B 201901 0 0 0 1 4.23
B 201902 0 0 0 1 3.75
B 201903 20 17 18 22 25
C 201901 0 0 0 0.06 2
C 201902 1700 1515 1585 1787 1920
C 201903 1400
当前的csv结果是:
Result.csv:
"Point.Forecast" "Lo.80" "Hi.80" "Lo.95" "Hi.95"
Jul 2019 -7019257.05555555 -21898155.8001267 7859641.6890156
-29774569.0172597 15736054.9061486
"Point.Forecast" "Lo.80" "Hi.80" "Lo.95" "Hi.95"
Jul 2019 -188594598.720274 -291947989.598493 -85241207.8420547
-346659969.827926 -30529227.6126215
accountnumbers.csv
"x"
1 A
"x"
1 B
"x"
1 C
解决方法
在这里,您每次循环acc no时都将每个预测点存储在csv文件中。 如果您有大量数据,则将花费大量时间。而不是采取一个临时数据帧 并在其中存储acc no预测数据框,并在循环完成后将该数据框存储到csv文件中。
进行上述更改后,可以使用“剪贴板”功能直接复制R数据框并粘贴到Excel中。
write.table(RDATAFRAME,"clipboard",sep="\t",row.names=FALSE,col.names=FALSE)
执行上述代码后,转到excel文件,然后按Ctrl + V(粘贴)。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。