我正在创建时间序列计量经济回归模型。数据存储在Pandas数据框架中。
如何使用Python进行滞后时间序列计量经济分析?我过去使用过Eviews(这是一个独立的计量经济学程序,即不是Python包)。要使用Eviews估计OLS方程,您可以这样写:
equation eq1.ls log(usales) c log(usales(-1)) log(price(-1)) tv_spend radio_spend
注意滞后的依赖和滞后的价格条款。这些滞后的变量似乎很难使用Python处理,例如使用scikit或statmodels(除非我错过了一些东西)。
一旦我创建了一个模型,我想执行测试并使用该模型进行预测。
我对做ARIMA、指数平滑或Holt Winters时间序列预测不感兴趣——我主要对时间序列OLS感兴趣。
pandas允许您在不移动索引的情况下移动数据,例如
df.shift(-1)
将比
创建1个索引滞后或
df.shift(1)
将创建一个前向滞后1 index
因此,如果您有一个每日时间序列,您可以使用df.shift(1)在您的价格值中创建1天滞后,例如
df['lagprice'] = df['price'].shift(1)
之后,如果你想做OLS,你可以看看这里的scipy模块:
http://docs.scipy.org/doc/scipy-0.14.0/reference/generated/scipy.stats.linregress.html