Statsmodels:公式的简写方式

Bhu*_*anD 6 python statsmodels patsy

使用 statesmodels 的逻辑回归模型:

log_reg = st.logit(formula = 'label ~ pregnant + glucose + bp + insulin + bmi + pedigree + age', data=pima).fit()
Run Code Online (Sandbox Code Playgroud)

有没有简单的方法来写公式的第二部分(怀孕+葡萄糖+血压+胰岛素+体重指数+血统+年龄)?这里必须明确提及所有列。如果超过100列,就很难写,而且语句也会很长。

Jos*_*sef 0

公式没有特定的快捷方式。

您可以使用 python 字符串操作来构建公式,例如基于 pandas 数据框列名称。

或者您直接使用数组或数据框。但即便如此,如果您想要人类可读的输出(例如summary(). 如果您只需要预测,那么没有变量名的数组很有用。

  • `str1 = pima.columns[-1] + " ~ " + " + ".join(list(pima.columns[1:len(pima.columns)-1])` `log_reg = st.logit(公式 = str1 , 数据=pima).fit()` (2认同)