我想生成类似于summary_col(标准日记表)生成的回归表,但带有自定义解释变量标签。
有没有办法更改模型参数属性中保存的行名称?
到目前为止,我将变量重命名为最接近我的意图,但应该有更好的方法来做到这一点。
假设你已经完成了
reg = smf.ols(formula = "y~x1+x2+x3").fit()
我建议(1)有一本字典来保存所有重新标记:dic = {original_vname: new_name}a (2) 一对有用的函数:
def rename_vars(vname):
to_ret = vname
for orig_vname in list(dic.keys()):
if vname == 'original_vname':
to_ret = dic['original_vname']
return to_ret
和
def rename_ols(reg):
for i in range(len(reg)):
reg[i] = rename_vars(reg[i])
然后,只需执行:
rename_ols(reg.model.exog_names)
就是这样。调用summary_col后,变量将显示新标签。
我是一名优秀的程序员,十分优秀!