我正在尝试对列表中的多个变量运行ANOVA。但是,让我麻烦的是指出ANOVA公式中的变量(变量'lst)实际上是指向列表的。
这是我尝试过的:
lst = ['Item1', 'Item2']
for item in lst:
mod = ols('lst ~ Group', data= DF).fit()
aov_table = sm.stats.anova_lm(mod, typ=2)
print(aov_table)
答案 0 :(得分:1)
如果要在for循环中访问对应项,则必须使用format()
方法来格式化字符串。
例如:
lst = ['Item1', 'Item2']
for item in lst:
mod = ols('{} ~ Group'.format(item), data= DF).fit()
aov_table = sm.stats.anova_lm(mod, typ=2)
print(aov_table)
第一项的公式字符串为Item1 ~ Group
,第二项的公式字符串为Item2 ~ Group
。