2011-03-08 38 views
0

我想剪一個季度時間序列,也做了以下內容:索引後的時間系列數字又是什麼?

cuttedts <- initialts[time(initialts) > 1984.00] 

其中因爲當過我的1984年第一季度引人注目

is.ts(initialts) 
# returns TRUE 

is.ts(cuttedts) 
# returns FALSE 
後得到的所有數據

我做錯了什麼,我應該使用子集?什麼是最好的方法來做到這一點?

回答

4

您可以使用window函數來提取時間序列的一個子集。

例如:

R> myts <- ts(data=1:40, start=2001, end=c(2010,4), frequency=4) 
R> myts 
    Qtr1 Qtr2 Qtr3 Qtr4 
2001 1 2 3 4 
2002 5 6 7 8 
2003 9 10 11 12 
2004 13 14 15 16 
2005 17 18 19 20 
2006 21 22 23 24 
2007 25 26 27 28 
2008 29 30 31 32 
2009 33 34 35 36 
2010 37 38 39 40 

然後:

R> subts <- window(myts, start=c(2005,2), end=c(2008,3)) 
R> subts 
    Qtr1 Qtr2 Qtr3 Qtr4 
2005  18 19 20 
2006 21 22 23 24 
2007 25 26 27 28 
2008 29 30 31 

的結果仍然是ts對象:

R> is.ts(subts) 
[1] TRUE 
+0

THX朱巴。 RTFM ran2。我正要發佈這個。希望它可以幫助別人:) – 2011-03-08 10:33:53

相關問題