我正在try 使用sm.OLS和迭代工具.组合来运行最佳子集多元回归.我已经添加了常量,但是因为迭代器.组合循环遍历所有列组合,所以有时它会排除常量项.
为了绕过这个问题,我try 使用迭代式工具.组合始终在每个组合中包含该常量列.
结果只包括一些组合,包括常量.我怎么才能让每个组合都有恒定的列呢?
我正在寻找的示例:
[(‘const’,‘B’,‘C’),(‘const’,‘B’,‘D’),(‘const’,‘B’,‘E’),(‘const’,‘B’,‘F’),(‘const’,‘A’,‘B’),
这是我目前拥有的一个例子(图片和结果一起发布):
cols = ['A', 'B', 'C', 'D', 'E', 'F']
const = [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]
ran = np.random.rand(12, 6)
df = pd.DataFrame(data = ran, columns=cols)
df['const'] = const
results=[]
print(df)
for combo in itertools.combinations(df.columns, 3):
results.append(combo)
print(results)