我想在使用分类变量和聚类标准误差的 statsmodels 中运行回归。
我有一个数据集,其中包含机构、治疗、年份和入学情况。治疗是一个虚拟变量,机构是一个字符串,其他都是数字。我已确保删除所有空值。
df.dropna()
reg_model = smf.ols("enroll ~ treatment + C(year) + C(institution)", df)
.fit(cov_type='cluster', cov_kwds={'groups': df['institution']})
我得到以下信息:
ValueError:权重和列表的长度不同。
有没有办法解决这个问题,让我的标准错误集群?
你需要cov_type='cluster'
适合。
cov_type
是一个关键字参数,当关键字用作位置参数时,它的位置不正确。http://www.statsmodels.org/stable/ generated/statsmodels.regression.linear_model.OLS.fit.html http://www.statsmodels.org/stable/generated/statsmodels.regression.linear_model.OLS.fit.html
一般来说,当关键字参数用作位置参数时,statsmodels 不保证向后兼容性,即关键字位置在未来版本中可能会发生变化。
但是,我不明白 ValueError 是从哪里来的。
Python 具有信息丰富的回溯,在提出问题时添加完整的回溯或至少添加显示异常发生位置的最后几行非常有用。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)