循环遍历所有列,并在回归模型-Python中添加所有可能的组合

循环遍历所有列,并在回归模型-Python中添加所有可能的组合,python,Python,我想写一个函数,当我们传递一个包含a、B、C和Y列的数据帧时,该函数将返回一个模型,其中包含a、B、C以及交互项的所有可能组合 我想要的输出是 smf.ols('Y~ A + B + C + A*B + B*C + C*A + A*B*C' , data = dataframe).fit() 起初我试过 for column in df: print(df[column]) 但我不知道接下来该怎么办。这可能是相当开放的。但是任何人都可以提出一个想法,我可以尝试形成它。有人能帮我做这件

我想写一个函数,当我们传递一个包含a、B、C和Y列的数据帧时,该函数将返回一个模型,其中包含a、B、C以及交互项的所有可能组合

我想要的输出是

smf.ols('Y~ A + B + C + A*B + B*C + C*A + A*B*C' , data = dataframe).fit()
起初我试过

for column in df:
    print(df[column])

但我不知道接下来该怎么办。这可能是相当开放的。但是任何人都可以提出一个想法,我可以尝试形成它。有人能帮我做这件事吗?

我不熟悉你正在研究的领域,但是如果你想要
A
B
C
的所有组合,一次至少取两个,你可以这样做

import itertools

itertools.chain(itertools.combinations(['A','B','C'], 2), itertools.combinations(['A', 'B', 'C,'], 1))

然后可以将其转换为所需的表达式。

非常感谢,我已经尝试过了,a=it.chain(it.combines(df.columns,2),it.combines(df.columns,1))。但无法看到输出。得到。您能告诉我如何访问此文件吗?您可以使用
for i in
对其进行迭代,或者如果您只是想调试并检查它,请将其作为参数传递给
list