R 程式設計/時間序列
外觀
< R 程式設計
在下面的示例中,我們將使用資料集 Mpyr,該資料集包含在 R 包 Ecdat 中,可以透過以下程式碼載入到 R 中並在 R 中檢視。
#Installs the package Ecdat.
install.packages("Ecdat")
#Loads the packages Ecdat.
library(Ecdat)
#Attached the dataset Mpyr.
data(Mpyr)
#Shows the dataset Mpyr.
Mpyr
Time Series:
Start = 1900
End = 1989
Frequency = 1
m p y r
1900 1.718774 2.092641 0.9030195 4.380000
1901 1.856318 2.086574 1.0131038 4.280000
1902 1.936512 2.120476 1.0114817 4.920000
- 函式ts()用於建立時間序列物件。
- 函式as.ts()將物件強制轉換為時間序列。
- 函式is.ts()測試物件是否為時間序列。
示例
> data.a<-seq(1,24,by=1)
> is.ts(data.a)
[1] FALSE
> ts(data.a, start=c(2005,1), frequency=12)
Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec
2005 1 2 3 4 5 6 7 8 9 10 11 12
2006 13 14 15 16 17 18 19 20 21 22 23 24
> data.b<-seq(1,24,by=1)
> is.ts(data.b)
[1] FALSE
> is.ts(as.ts(data.b))
[1] TRUE
- 函式lag()建立滯後變數。
- 函式diff()建立差分變數。
示例
> data.a<-seq(1,12,by=1)
> ts.a<-ts(data.a, start=c(2005,1), frequency=4)
> lag.a<-lag(ts.a,k=1)
> diff.a<-diff(ts.a,lag=1,difference=1)
> ts.a
Qtr1 Qtr2 Qtr3 Qtr4
2005 1 2 3 4
2006 5 6 7 8
2007 9 10 11 12
> lag.a
Qtr1 Qtr2 Qtr3 Qtr4
2004 1
2005 2 3 4 5
2006 6 7 8 9
2007 10 11 12
> diff.a
Qtr1 Qtr2 Qtr3 Qtr4
2005 1 1 1
2006 1 1 1 1
2007 1 1 1 1
- 函式plot.ts()用於繪製時間序列物件。
為了使用普通最小二乘法將自迴歸時間序列模型擬合到資料,可以使用函式ar.ols(),該函式是“stats”包的一部分。
函式acf()計算(預設情況下還會繪製)自協方差或自相關函式的估計值。函式pacf()是用於偏自相關的函式。函式ccf()計算兩個單變數序列的互相關或互協方差。[1]
- fBasics, tis, zoo, tseries, xts, urca, forecast
