2017-09-25 5 views
1

私は半年(半年)のデータポイントを持つ時系列を持っています。R - 半年データによる時系列の分析?

"frequency = 2"は実際の時間をはるかに超える非常に奇妙な時系列オブジェクトを返すので、ts()関数はそれを処理できないようです。

Rのこの種の時系列オブジェクトの時系列分析を行う方法はありますか?

EDIT:ここでは例です:

dat <- seq(1, 17, by = 1) 
> semi <- ts(dat, start = c(2008,12), frequency = 2) 
> semi 
Time Series: 
Start = c(2013, 2) 
End = c(2021, 2) 
Frequency = 2 
[1] 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 

私は期待していた:

> semi 
     s1  s2 
2008   1 
2009 2  3 
2010 4  5 
2011 6  7 
2012 8  9 
2013 10  11 
2014 12  13 
2015 14  15 
2016 16  17 
+0

私は 'deltat = 1/2'で試してみましたが、うまくいくようです。 'semi < - c(1:12)' 'semi_ts < - ts(semi、start = 2000、deltat = 1/2)'となります。 ....> sem_ts 時系列: 開始= c(2000、1) 終了= c(2005、2) 頻度= 2 [1] ] 1 2 3 4 5 6 7 8 9 10 11 12 ' –

+0

正しい' start = 'を指定しましたか?これは 'ts 'に予期しない方法で時間をシフトさせる可能性があります。 – useR

+0

@wolf_wue 'frequency = 2'を設定すると、あなたの例もうまく動作します(同じ答えを返します):' semi_ts < - ts(semi、start = 2000、frequency = 2) 'は' START = c(2000 、1) 'と' END = c(2005,2) ' – Eumenedies

答えて

1

まず最初TS要素は、2008年、関数の開始と終了の代わりに2013年から始まり、なぜ私が説明しましょう期間/頻度で作業してください。あなたの周波数はこの期間のために働く必要があります。2.

であれば2013年に第二期である2008年以降12日の期間を選択:

semi <- ts(dat, start = c(2008,2), frequency = 2) 

はまだ半正しい時系列を与え、しかし、それはしていません頻度が2の名前を知っています。時系列データをプロットすると、正しい半年のグラフが表示されます。

plot.ts(semi) 

In this problem誰かがts()が知っている標準的な頻度について説明しました。

+0

ありがとうございました! 12月のスタートは12でなく、2でなければなりません。 – SiKiHe