我想在使用分类变量和聚类标准误差的statsmodels中运行回归。
我有一个数据集,其中包含列机构,治疗,年份和注册。待遇是一个假人,制度是一个字符串,其他是数字。我已确保删除所有空值。
df.dropna()
reg_model = smf.ols("enroll ~ treatment + C(year) + C(institution)", df)
.fit(cov_type='cluster', cov_kwds={'groups': df['institution']})
我得到以下信息:
ValueError:权重和列表的长度不同。
是否可以解决此问题,以便将我的标准错误归类?
答案 0 :(得分:0)
您需要cov_type='cluster'
适合。
cov_type
是关键字参数,当关键字用作位置参数时,位置不正确。
http://www.statsmodels.org/stable/generated/statsmodels.regression.linear_model.OLS.fit.html
通常,当将关键字参数用作位置参数时,statsmodels不能保证向后兼容,也就是说,关键字位置在将来的版本中可能会更改。
但是,我不知道ValueError的来源。 Python具有非常丰富的回溯信息,在询问问题以添加完整的回溯信息或至少最后几行来显示引发异常的地方时,它非常有用。