ValueError:exog 没有完整的列排名

Lon*_*Rob 6 python linearmodels

我正在PanelOLSlinearmodels包中运行一个。

与经常发生的情况一样,缺少一些观察结果。当我在R(我认为等效命令是plm)中运行等效命令时,我得到以下信息:

Unbalanced Panel: n=11, T=17-61, N=531
Run Code Online (Sandbox Code Playgroud)

所以面板是不平衡的:有些人只有 17 个时间段的完整数据,而其他人则有更多。但是回归仍然运行。

等效的python命令是:

import linearmodels.panel as pnl
model = pnl.PanelOLS.from_formula(formula, data=src)
Run Code Online (Sandbox Code Playgroud)

这给了我一个警告:

输入包含缺失值。删除缺少观察的行。

还有一个错误:

MyPythonInstallation\lib\site-packages\linearmodels\panel\model.py in _validate_data(self)
    207 
    208         if matrix_rank(x) < x.shape[1]:
--> 209             raise ValueError('exog does not have full column rank.')
    210         self._constant, self._constant_index = has_constant(x)
    211 

ValueError: exog does not have full column rank.
Run Code Online (Sandbox Code Playgroud)

我该如何继续我的回归?

小智 2

我有同样的错误。就我而言,我正在使用的数据帧的一列被视为“对象”数据类型。将该列更改为“浮点”数据类型解决了我的问题。