【发布时间】:2016-04-19 08:07:12
【问题描述】:
我正在尝试对 pandas Dataframes 进行面板回归:
目前我有两个数据框,每个数据框包含 52 行(日期)*99 列(99stocks) :Markdown file with data representation
运行时:
est=sm.OLS(Stockslist,averages).fit()
est.summary()
我收到 ValueError:形状 (52,99) 和 (52,99) 未对齐:99 (dim 1) != 52 (dim 0)
谁能指出我做错了什么? 该模型只是 y(i,t)=x(i,t)+error term 所以没有拦截。 不过我想在未来添加时间效果。
亲切的问候, 杰伦
【问题讨论】:
-
statsmodels OLS 用于单变量因变量。您需要堆叠或 np.ravel 或重塑各个时间序列。您想要所有股票的单一斜率参数吗?
-
我有两次 52 个单独的时间序列。我想要一个面板回归,而不是运行 52 个单独的 ols 回归,它在一个回归中捕获所有股票。所以是的,我想要一个斜坡而不是 52 个不同的斜坡
-
这种情况仅相当于 long 形式的单个 OLS 回归。所以只需将两个 DataFrame 重塑为 52 * 99 行。例如,可以根据公司标签或指数创建固定效应的虚拟变量。
-
“长格式”是什么意思(代码方面)
-
标签: python pandas statsmodels