2.2sklearn.preprocessing.PolynomialFeatures生成交叉特征
Posted cjr0707
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了2.2sklearn.preprocessing.PolynomialFeatures生成交叉特征相关的知识,希望对你有一定的参考价值。
sklearn.preprocessing.PolynomialFeatures原文
多项式生成函数:sklearn.preprocessing.PolynomialFeatures(degree=2, interaction_only=False, include_bias=True)
参数说明:
degree
:默认为2,多项式次数(就同几元几次方程中的次数一样)interaction_only
:是否包含单个自变量**n(n>1)特征数据标识,默认为False,为True则表示去除与自己相乘的情况include_bias
:是否包含偏差标识,默认为True,为False则表示不包含偏差项
import numpy as np
from sklearn.preprocessing import PolynomialFeatures
X = np.arange(6).reshape(3, 2)
X
array([[0, 1],
[2, 3],
[4, 5]])
poly = PolynomialFeatures(degree = 2)
poly.fit_transform(X)
array([[ 1., 0., 1., 0., 0., 1.],
[ 1., 2., 3., 4., 6., 9.],
[ 1., 4., 5., 16., 20., 25.]])
# 设置参数interaction_only = True,不包含单个自变量****n(n>1)特征数据
poly = PolynomialFeatures(degree = 2, interaction_only = True)
poly.fit_transform(X)
array([[ 1., 0., 1., 0.],
[ 1., 2., 3., 6.],
[ 1., 4., 5., 20.]])
# 再添加 设置参数include_bias= False,不包含偏差项数据
poly = PolynomialFeatures(degree = 2, interaction_only = True, include_bias=False)
poly.fit_transform(X)
array([[ 0., 1., 0.],
[ 2., 3., 6.],
[ 4., 5., 20.]])
以上是关于2.2sklearn.preprocessing.PolynomialFeatures生成交叉特征的主要内容,如果未能解决你的问题,请参考以下文章
sklearn.preprocessing.OneHotEncoder
sklearn.preprocessing中standardscaler和Normalizer之间的区别
sklearn.preprocessing 中 LabelEncoder 的类似方法?
sklearn.preprocessing.PolynomialFeatures多项式特征