首页 > 解决方案 > 为什么 Python 中的 PooledOLS 在长度相同时会给我错误“依赖和 exog 必须具有相同数量的观察值”?

问题描述

我正在使用线性模型中的面板 OLS 来运行以下回归

reg_1 = PooledOLS(y_endog, X_1).fit(cov_type = 'heteroskedastic')

但收到一条错误消息,指出内生变量和外生变量的长度不同。

if y.shape[0] != x.shape[0]:
--> 415             raise ValueError(
    416                 "dependent and exog must have the same number of " "observations."
    417             )

ValueError: dependent and exog must have the same number of observations.

但是,如果我检查两者的形状,y_endog它们X_1是相同的形状。y_endog我还通过在创建和数据框之前删除任何行并重置索引来确保没有 NaN 值X_1

X_1 = 1如果我运行估计中列数有效的代码。然而,一旦X_1超过 1 列,估计就不再起作用(例如,向 PooledOLS 模型添加一个附加变量)。

数据框

y_endog

y_endog

X_1

X_1

标签: pythonpandaslinearmodels

解决方案


推荐阅读