dask_ml.preprocessing.PolynomialFeatures

dask_ml.preprocessing.PolynomialFeatures

class dask_ml.preprocessing.PolynomialFeatures(degree: int = 2, interaction_only: bool = False, include_bias: bool = True, preserve_dataframe: bool = False)[源代码]

生成多项式和交互特征。

生成一个新的特征矩阵,该矩阵由所有次数小于或等于指定次数的特征的多项式组合组成。例如,如果输入样本是二维的并且形式为 [a, b],则次数为 2 的多项式特征是 [1, a, b, a^2, ab, b^2]。

阅读更多内容请参阅 用户指南

参数
int 或 tuple (min_degree, max_degree), 默认值=2

如果给定一个整数,它指定多项式特征的最大度数。如果传递一个元组 (min_degree, max_degree),那么 min_degree 是最小多项式度数,max_degree 是最大多项式度数。请注意,min_degree=0min_degree=1 是等价的,因为输出零次项由 include_bias 决定。

interaction_onlybool, 默认=False

如果 True,则只生成交互特征:这些特征是至多 degree不同 输入特征的乘积,即排除相同输入特征的二次或更高次幂的项:

  • 包含:x[0]x[1]x[0] * x[1] 等。

  • 排除项: x[0] ** 2, x[0] ** 2 * x[1], 等等。

include_biasbool, 默认=True

如果 `True`(默认),则包含一个偏置列,该特征中所有多项式幂均为零(即一列全为1 - 在线性模型中充当截距项)。

顺序{‘C’, ‘F’}, 默认=’C’

密集情况下的输出数组顺序。’F’ 顺序计算速度更快,但可能会减慢后续估计器的速度。

0.21 新版功能.

属性
powers_形状为的 ndarray

输出中每个输入的指数。

n_features_in_整数

拟合 过程中看到的特征数量。

0.24 新版功能.

feature_names_in_ : 形状为 (n_features_in_,) 的 ndarray形状为的 ndarray

拟合 过程中看到的特征名称。仅当 X 的所有特征名称均为字符串时定义。

1.0 新版功能.

n_output_features_整数

多项式输出特征的总数。输出特征的数量是通过迭代所有合适大小的输入特征组合来计算的。

参见

SplineTransformer

生成特征的一元B样条基的转换器。

preserve_dataframe布尔

如果为 True,则在转换后保留 pandas 和 dask 数据帧。使用 False(默认)返回 numpy 或 dask 数组,并模仿 sklearn 的默认行为。

示例

>>> 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(2)
>>> poly.fit_transform(X)
array([[ 1.,  0.,  1.,  0.,  0.,  1.],
       [ 1.,  2.,  3.,  4.,  6.,  9.],
       [ 1.,  4.,  5., 16., 20., 25.]])
>>> poly = PolynomialFeatures(interaction_only=True)
>>> poly.fit_transform(X)
array([[ 1.,  0.,  1.,  0.],
       [ 1.,  2.,  3.,  6.],
       [ 1.,  4.,  5., 20.]])

方法

fit(X[, y])

计算输出特征的数量。

fit_transform(X[, y])

拟合数据,然后进行转换。

get_feature_names_out([input_features])

获取转换后的输出特征名称。

get_metadata_routing()

获取此对象的元数据路由。

get_params([deep])

获取此估计器的参数。

set_output(*[, transform])

设置输出容器。

set_params(**params)

设置此估计器的参数。

transform(X[, y])

将数据转换为多项式特征。

__init__(degree: int = 2, interaction_only: bool = False, include_bias: bool = True, preserve_dataframe: bool = False)[源代码]