如何从 sklearn.preprocessing.PolynomialFeatures 中删除仅交互列

2023-12-23

根据下面给出的描述:“如果输入样本是二维的并且具有 [a, b] 形式,则 2 次多项式特征为 [1, a, b, a^2, ab, b^2]。 '

sklearn.preprocessing.PolynomialFeatures http://scikit-learn.org/stable/modules/generated/sklearn.preprocessing.PolynomialFeatures.html#sklearn.preprocessing.PolynomialFeatures.set_params

我需要生成的输出 ndarray 类型为: [a, b, a^2, b^2] 我知道poly = PolynomialFeatures(2, include_bias=False) poly.fit_transform(X)给出如下输出:[a, b, a^2, ab, b^2]。但我不希望生成这些中间“ab”类型列。怎么做有什么想法吗?或者有什么更好的API可以在这里使用?


查看patsy http://patsy.readthedocs.io/en/latest/overview.html以及这个 scikit-learn 集成帕齐学习 https://github.com/amueller/patsylearn.

这使您可以完全控制类似 R 的公式:

from patsylearn import PatsyTransformer
transformer = PatsyTransformer("y ~ a + b + a^2 + b^2")
transformer.fit(data)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何从 sklearn.preprocessing.PolynomialFeatures 中删除仅交互列 的相关文章

随机推荐