python时间序列滞后命令_如何在Python Pandas回归模型中使用滞后的时间序列变量?...
我正在創建時間序列計量經濟回歸模型。 數據存儲在Pandas數據框中。
如何使用Python進行滯后的時序經濟計量分析? 我過去曾經使用過Eviews(這是一個獨立的計量經濟學程序,即不是Python軟件包)。 要使用Eviews估算OLS方程,您可以編寫如下代碼:
1equation eq1.ls log(usales) c log(usales(-1)) log(price(-1)) tv_spend radio_spend
請注意滯后的依賴條款和滯后的價格條款。 這些滯后的變量似乎很難使用Python處理,例如 使用scikit或statmodels(除非我錯過了什么)。
創建模型后,我想執行測試并使用該模型進行預測。
我對執行ARIMA,指數平滑或Holt Winters時間序列投影不感興趣-我主要對時間序列OLS感興趣。
熊貓允許您移動數據而無需移動索引
1df.shift(-1)
將創建1索引滯后行為
要么
1df.shift(1)
將創建1個索引的前向滯后
因此,如果您有每日時間序列,則可以使用df.shift(1)在您的價格值中產生1天的滯后
1df['lagprice'] = df['price'].shift(1)
之后,如果您想進行OLS,可以在這里查看scipy模塊:
http://docs.scipy.org/doc/scipy-0.14.0/reference/generated/scipy.stats.linregress.html
謝謝-看起來不錯。在估算模型之前,是否需要創建所有滯后序列?還是有一種方法可以創建一個在需要時計算滯后值的模型?
普通最小二乘回歸通常不需要任何滯后。您應該只過去X和Y值,以估計可以最大程度減少錯誤的Beta。那么您可以在給定新X值的情況下估算出任何Y。如果您需要滯后模型。通常,我們在自回歸模型中引入滯后值,其中Xt-1與Xt有關,但這將是一個不同的模型
但是假設您要估算Xt-1和X之間的beta,則可以使用scipy并將df [price] .shift(1)傳遞為X,將df [price]傳遞為Y,這將校準具有Xt = B * XT-1
謝謝,這是有幫助的。在許多計量經濟學時間序列模型中,BTW使用的是滯后變量(以及滯后因變量)。例如,價格術語可能會滯后。
你救了我。真正做到。上帝祝福你。祝福您。 ;)
總結
以上是生活随笔為你收集整理的python时间序列滞后命令_如何在Python Pandas回归模型中使用滞后的时间序列变量?...的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 麻烦推荐个板材品牌?大家熟悉吗?
- 下一篇: 小米一键上锁工具_小米新品人脸识别智能锁