在适合 scikit-learn 之前准备分类特征交互的最佳方法是什么?
我statsmodels
可以方便地说 R 风格smf.ols(formula = 'depvar ~ C(var1)*C(var2)', data=df).fit()
(在 Stata 中与 相同regress depvar i.var1##i.var2
)。
(在v0.15sklearn.preprocessing.PolynomialFeatures
中,目前是开发人员)可以与分类变量一起使用吗?
在适合 scikit-learn 之前准备分类特征交互的最佳方法是什么?
我statsmodels
可以方便地说 R 风格smf.ols(formula = 'depvar ~ C(var1)*C(var2)', data=df).fit()
(在 Stata 中与 相同regress depvar i.var1##i.var2
)。
(在v0.15sklearn.preprocessing.PolynomialFeatures
中,目前是开发人员)可以与分类变量一起使用吗?
实际上,您可以将 Patsy 与 scikit-learn 一起使用,以获得与使用 R 或使用统计模型中的公式表示法获得的相同结果。请参见下面的代码:
from patsy import dmatrices
# create dummy variables, and their interactions
y, X = dmatrices('depvar ~ C(var1)*C(var2)', df, return_type="dataframe")
# flatten y into a 1-D array so scikit-learn can understand it
y = np.ravel(y)
您现在可以使用在 scikit-learn 中实现的任何模型,使用通常的符号,将 X 作为自变量,将 y 作为因变量。
使用帕西。
Patsy 是我最喜欢的 Python 库之一:它只做一件事,而且只做一件事,非常好。