在我的数据框架中,我几乎没有分类变量和连续变量。我想对分类变量和连续变量的每个组合进行方差分析(Anova_lm)。到目前为止,我只能为1个目标类别创建循环,所有连续变量都作为预测值,如下所示:
我的原始数据集pima包含以下列:
GENDER - categorical AGE - continuous EDUCATION - categorical INCOME - categorical RATE_INTEREST - continuous SPD - categorical TPD - categorical AMT_ANNUITY - continuous DOWNPAYMPERC - continuous
从数据集中我定义了pima_cont,它只包含连续变量。 根据数据集,我还定义了pima_categ,它只包含分类变量
keys = []
tables = []
for variable in pima_cont.columns:
model = ols('{} ~ EDUCATION'.format(variable), data=pima).fit()
anova_table = sm.stats.anova_lm(model, typ=2)
keys.append(variable)
tables.append(anova_table)
df_anova = pd.concat(tables, keys=keys, axis=0)
print(df_anova)
在这里,我必须手动编辑语句的这一部分中的目标model = ols('{} ~ EDUCATION'.format(variable), data=pima).fit()
有没有提示如何实现自动化,以便Python向我显示相同的输出,但将所有分类变量作为目标
非常感谢! 亚当
您需要一个多索引,只需使用下面的2 x 2示例:
为可能的组合制作多索引:
然后与上面的内容类似:
最后一个表如下所示:
相关问题 更多 >
编程相关推荐