拓端tecdat:Matlab創(chuàng)建向量自回歸(VAR)模型分析消費者價格指數(shù) (CPI) 和失業(yè)率時間
原文鏈接:http://tecdat.cn/?p=24365
原文出處:拓端數(shù)據(jù)部落公眾號
描述
var對象指定了p階平穩(wěn)的多變量向量自回歸模型(VAR(p))模型的函數(shù)形式并存儲了參數(shù)值。
varm
?對象的關鍵組成部分?包括時間序列的數(shù)量和多元自回歸多項式?(?p?)的階數(shù),因為它們完全指定了模型結構。其他模型組件包括將相同的外生預測變量與每個序列相關聯(lián)的回歸成分,以及常數(shù)和時間趨勢項。
例子
創(chuàng)建和修改默認模型
創(chuàng)建一個由一個序列組成的零階 VAR 模型。

Mdl
?是一個?varm
?模型對象。它包含一個序列、一個未知常數(shù)和一個未知方差。模型的屬性出現(xiàn)在命令行中。
假設您的問題在滯后 1 處有一個自回歸系數(shù)。要創(chuàng)建這樣的模型,請將自回歸系數(shù)屬性 (?AR
) 設置為包含NaN
?使用點表示法的值的單元格?。

如果您的問題包含多個序列,則使用不同的語法來創(chuàng)建模型。
為參數(shù)估計創(chuàng)建 VAR(4) 模型
為消費者價格指數(shù) (CPI) 和失業(yè)率創(chuàng)建 VAR(4) 模型。
聲明 CPI和失業(yè)率變量。
cpi ?DCP;
ura = aaTeUAE;
創(chuàng)建默認的 VAR(4) 模型。
var(2,4)

Mdl
?是一個?varm
?模型對象。例如,該?Constant
?屬性是一個 2×1 的NaN
?值向量?。因此,模型常數(shù)是要估計的活動模型參數(shù)。
通過將Trend
?屬性設置為NaN,
?使用點表示法來?包含未知的線性時間趨勢項?。

擴展?NaN
?到適當?shù)拈L度,即一個 2×1 的NaN
?值向量?。
指定 VAR 模型的所有參數(shù)值
為三個任意序列創(chuàng)建一個 VAR 模型。指定此方程組中的參數(shù)值。

假設是多元高斯分布,均值為 0,協(xié)方差矩陣

為參數(shù)值創(chuàng)建變量。
使用適當?shù)拿Q-值對參數(shù)創(chuàng)建一個 VAR(1) 模型對象,表示動態(tài)方程組。
var('Coan',cAR',i1're,dta,ovaice'Sa)

Mdl
?是一個完全指定的?varm
?模型對象。默認情況下,?varm
?將自回歸系數(shù)歸因于第一個滯后。
您可以使用圓點表示法調整模型屬性。例如,考慮另一個 VAR 模型,該模型將自回歸系數(shù)矩陣歸因于?Phi1
?第二個滯后項,為第一個滯后系數(shù)指定一個零矩陣,并將所有其他項視為等于?Mdl
。創(chuàng)建此 VAR(2) 模型。
M2R= Phi

或者,您可以使用varm
?與 for 相同的語法?創(chuàng)建另一個模型對象?Mdl
,但另外指定?'Lags',2
.
估計的 VAR (4) 模型
將 VAR(4) 模型擬合到消費者價格指數(shù) (CPI) 和失業(yè)率數(shù)據(jù)。
在不同的圖上繪制兩個序列。
figure;
plot(atal.Te,DaTa.);

figure;
plot(DaTTie,DatTE);

通過將 CPI 轉換為一系列增長率來穩(wěn)定 CPI。通過從失業(yè)率序列中刪除第一個觀測值來同步這兩個序列。
prce2rt(DaTlL);
創(chuàng)建默認的 VAR(4) 模型。

Mdl
?是一個?var
?模型對象。所有包含NaN
?值的屬性都?對應于給定數(shù)據(jù)要估計的參數(shù)。
使用整個數(shù)據(jù)集估計模型。
estate(Mdl)

EstMdl
?是一個估計的?varm
?模型對象。它是完全指定的,因為所有參數(shù)都有已知值。說明表明自回歸多項式是平穩(wěn)的。
顯示估計的匯總統(tǒng)計信息。
summari

?

VAR(4) 模型的預測
創(chuàng)建并估計 CPI 增長率和失業(yè)率的 VAR(4) 模型。將最后十個時期視為預測范圍。
cp = pre2rt(ci);
EMl = estme(dl,Y(1(end-10),:));
使用估計模型和樣本內(nèi)數(shù)據(jù)作為樣本前觀察預測 10 個數(shù)據(jù)。
freca(Estl);
在單獨的圖上繪制帶有預測值的序列部分。
plot(Tie(ed - 50:ed),ci(nd - 50:ed));

plot(Time(nd - 50:ed),ue(ed - 50:ed));


最受歡迎的見解
1.在python中使用lstm和pytorch進行時間序列預測
2.python中利用長短期記憶模型lstm進行時間序列預測分析
3.使用r語言進行時間序列(arima,指數(shù)平滑)分析
4.r語言多元copula-garch-模型時間序列預測
5.r語言copulas和金融時間序列案例
6.使用r語言隨機波動模型sv處理時間序列中的隨機波動
7.r語言時間序列tar閾值自回歸模型
8.r語言k-shape時間序列聚類方法對股票價格時間序列聚類
9.python3用arima模型進行時間序列預測