0

我有一个名为 transactions_query 的数据集:

 Index   Date                     Number_transactions
 500     2017-05-17               20546

我正在使用 ARIMA 模型来预测此数据的值,该数据保存到 transactions_query_fit (这是一个预测对象)。这是一个示例行

            Point Forecast    Lo 80     Hi 80    
2018.3217   42769.17          39160.82  46710.00

Lo 95     Hi 95
37375.59  48941.08

我想要做的是将此预测附加到原始数据

我尝试了以下方法:

将预测转换为数据框,然后转换为矩阵:

transaction_query_fit<- as.data.frame(transaction_query_fit)
transaction_query_fit<- as.matrix(transaction_query_fit)

这样做应该允许我将预测绑定到 transaction_query 数据框?

我想到了一个 FOR LOOP,它通过从 transaction_query 数据框中获取最后一行来生成预测的每日交易日期

latest_transaction <- tail(transactions_query,1)
latest_transaction <- latest_transaction[,1]

row<- 0
for (i in transaction_query_fit[1:nrow(transaction_query_fit),1]) 
{
row[i] <- row[i] + 1
transaction_query_fit$date <- latest_transaction + row[i]
}

但这根本行不通。我收到错误“长度为 0 的参数”。似乎循环只能应用

有没有人有任何想法?

谢谢

- -编辑 - -

我正在进行测试,结果令人困惑:

row<- 1
for (i in transaction_query_fit[1:nrow(transaction_query_fit),1]) {
  row[i] <- row[i] + 1
  print(row[i])
}

打印出“[1] NA”

我不明白为什么

就像索引不可用,就好像我在运行循环之前没有转换为矩阵一样

跑步:

 transactions_query_fit[1:nrow(transactions_query_fit),1]

提供美观且格式良好的输出:

[1] 42769.17 42184.20 41580.65 44223.21 31672.88 24786.25 35532.48 36102.99 

但是为什么循环会给出 NA 呢?!

4

0 回答 0