我有一个像这样读入的数据集:
pm10 = pds.read_csv('pm10.csv', index_col = [0,1], parse_dates=True)
panel_exog = pm10.to_panel()['pass_ind']
但是当我进行转换时,返回的面板有大整数,其中应该是零(或 1)。我必须将“.0”添加到该二进制变量的所有行中,以使其按我想要的方式工作。
我在这里报告了一个错误。我在 上看到了另一个错误报告to_panel
,在 GitHub 上发布的一些附加信息(例如数据文件的链接)会很有用:
time_effects
是仅适用于 a 的有效参数panel OLS
,不适用于 a simple OLS
。来自熊猫文档:
def ols(**kwargs):
"""Returns the appropriate OLS object depending on whether you need
simple or panel OLS, and a full-sample or rolling/expanding OLS.
Will be a normal linear regression or a (pooled) panel regression depending
on the type of the inputs:
y : Series, x : DataFrame -> OLS
y : Series, x : dict of DataFrame -> OLS
y : DataFrame, x : DataFrame -> PanelOLS
y : DataFrame, x : dict of DataFrame/Panel -> PanelOLS
y : Series with MultiIndex, x : Panel/DataFrame + MultiIndex -> PanelOLS
您可以发布您正在使用的 CSV 文件,以找出您正在尝试执行的 OLS 吗?
编辑:从您发布的 CSV 中可以清楚地看出您正在传递给pandas.ols
两个Series
对象。从上面的文档字符串中,PanelOLS
你需要传递两个DataFrames
来代替。