R Loop&输出数据帧

时间:2018-02-19 19:22:14

标签: r loops dataframe

我目前正在开发一个模型来预测一些数据。

我正在使用以下过程从流程输出数据,但我不想创建过多的新数据帧。

    for (i in 1:10) {
        print(i)
        assign(paste("run", i, sep = ""), d.frame)
        d.frame <- data.frame(seq(from = 0 + i, to = 2015 + i, by = 1))   
    }

我想将数据导出到1个dataframe / table,但是有多列

提前感谢任何指针

编辑添加。

我正在训练1周+ 1天数据的模型(2016 + 288个数据点) 我预测下一个的结果,以及时间序列中的下一个288点。

我正在为每个时间步骤重新训练模型 循环1使用数据点1到2016并向前输出3个时间步 循环2使用数据点2到2017并向前输出3个时间步 .. .. 我想将每个循环的模型参数导出到数据帧

Loop, Alpha, Beta, Gamma
  1    0.04   0     0.50
  2    0.1    0     0.45
  3
  4

我的第二个问题与上面相同,从时间序列预测中导出数据

Forecast step   H1    H2    H3
      1         72    87    88
      2         84    90    95
      3         88    84    76

2 个答案:

答案 0 :(得分:0)

我确信这比这更优雅,但我只想快速调整您的代码以避免使用assign()

d.frame <- data.frame(run1 = seq(from = 0 + 1, to = 2015+1, by = 1))

for(i in 2:10){
  d.frame <- data.frame(d.frame, d.frame$run1 +i) 
  names(d.frame)[i] = paste0("run", i)
}

答案 1 :(得分:0)

我认为我找到了一个解决方案,可能会使用效率更高的替代方法。

nc <- 3
nr <- 10
df <- data.frame(matrix(NA, ncol = nc, nrow = nr))
for (i in seq_len(nr)) {
    ## can fill in the "cells" as he goes with various results 
    ## the below is just to illustrate 
    df[i, 1] <- speedforecast_All$model[3]
    df[i, 2] <- speedforecast_All$model[4]
    df[i, 3] <- speedforecast_All$model[5]
}
df