0

2 年間の観測データ ポイントが入力された時系列があり、Holt-Winters を使用して予測モデルを作成しています。次に、R の予測関数を使用して、24 か月先を推定します。

現在の予測オブジェクトは時系列であり、次のようになります。

      Jan  Feb  Mar June ...
2012  xxx  yyy  zzz xxy
2013  xyx  yxy  zyz zxz

しかし、myPrediction[1] などの TS オブジェクトにアクセスすると、値 xxx しか返されません。

予測されたオブジェクトの DATE と VALUE の両方を保存しようとしています。最終的に、data.frame または次のような MySQL テーブルに直接エクスポートできるオブジェクトを作成しようとしています。

Projection Date  Value
2012-01-01        xxx
2012-02-01        yyy
2012-03-01        zzz
...
...
2013-01-01        xyx

返された予測関数の日付 + 値を示す 2 つの列を作成する簡単な方法はありますか?

4

1 に答える 1

0

時系列オブジェクトは少し奇妙です。これらは、列または行名としてアクセスできるのではなく、開始時刻と終了時刻を小数年および属性の間隔数として格納するベクトルです。次のように2つの列を使用してデータフレームを作成できます。

 tsobj <- ts(1:24,  frequency = 12, start = c(2012, 1))
 tsattr <- tsp(tsobj)
 data.frame(Dates =seq(tsattr[1], tsattr[2], by= 1/tsattr[3] ),
            Value = tsobj )
          Dates Value
1  2012.000     1
2  2012.083     2
3  2012.167     3
4  2012.250     4
5  2012.333     5
 snip
#------a character valued column ----------
data.frame(Dates =paste( rep( c(2012,2013), each= 12 ),seq(1:12 ), sep="-"), 
            Value = tsobj)
     Dates Value
1   2012-1     1
2   2012-2     2
3   2012-3     3
4   2012-4     4
5   2012-5     5
snip
#------Date-classed column -----
 data.frame(Dates =as.Date(paste( rep( c(trunc(tsattr[1]), trunc(tsattr[2]) ), 
                            each= 12 ),
                            seq(1:12 ),
                            1,
                            sep="-")), 
             Value = tsobj)
#----
        Dates Value
1  2012-01-01     1
2  2012-02-01     2
3  2012-03-01     3
4  2012-04-01     4
5  2012-05-01     5
6  2012-06-01     6
于 2012-07-31T22:11:07.423 に答える