sklearn.preprocessing.FunctionTransformer

class sklearn.preprocessing.FunctionTransformer(func=None, inverse_func=None, *, validate=False, accept_sparse=False, check_inverse=True, kw_args=None, inv_kw_args=None)

[源码]

根据任意可调用对象构造一个转换器。

FunctionTransformer将其X(和可选的y)参数转发给用户定义的函数或函数对象,并返回此函数的结果。这对于无状态转换非常有用,比如记录频率、自定义缩放等等。

注意:如果将lambda用作该函数,则生成的变压器将不可腌制。

版本0.17中的新功能。

用户指南中阅读更多内容

参数 说明
func callable, optional default=None
用于转换的可调用对象。将传递与transform相同的参数,并转发args和kwargs。如果func为None,则func将为标识函数。
inverse_func callable, optional default=None
可调用用于逆变换。将传递与逆变换相同的参数,并转发args和kwargs。如果inverse_func为None,则inverse_func将为标识函数。
validate bool, optional default=False
指示在调用func之前应检查输入X数组。可能是:
如果为False,则没有输入验证。
如果为True,则X将转换为二维NumPy数组或稀疏矩阵。如果无法进行转换,则会引发异常。
在版本0.22中更改:validate的默认值从True更改为False。
accept_sparse boolean, optional
表示func接受稀疏矩阵作为输入。如果validate为False,则不起作用。否则,如果accept_sparse为false,则稀疏矩阵输入将引发异常。
check_inverse bool, default=True
是先检查该输入,还是先检查func,然后再检查inverse_func,都会导致原始输入。它可以用于全面性检查,在条件不满足时发出警告。
0.20版中的新功能。
kw_args dict, optional
传递给func的其他关键字参数字典。
版本0.18中的新功能。
inv_kw_args dict, optional
要传递给inverse_func的其他关键字参数的字典。
版本0.18中的新功能。

示例

>>> import numpy as np
>>> from sklearn.preprocessing import FunctionTransformer
>>> transformer = FunctionTransformer(np.log1p)
>>> X = np.array([[01], [23]])
>>> transformer.transform(X)
array([[0.       , 0.6931...],
       [1.0986..., 1.3862...]])

方法

方法 说明
fit(self, X[, y]) 通过检查X来安装变压器。
fit_transform(self, X[, y]) 拟合数据,然后对其进行转换。
get_params(self[, deep]) 获取此估计量的参数。
inverse_transform(self, X) 使用反函数变换X。
set_params(self, **params) 设置此估算器的参数。
transform(self, X) 使用前向功能变换X。
__init__(self, func=None, inverse_func=None, *, validate=False, accept_sparse=False, check_inverse=True, kw_args=None, inv_kw_args=None)

[源码]

初始化自身。请参阅帮助(键入(self))以获取准确的签名。

fit(self, X, y=None)

[源码]

通过检查X来安装转换器。

如果validate为True,将检查X。

参数 说明
X array-like, shape (n_samples, n_features)
输入数组。
返回值 说明
self -
fit_transform(self, X, y=None, **fit_params)

[源码]

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

使用可选参数fit_params将转换器拟合到X和y,并返回X的转换版本。

参数 说明
X {array-like, sparse matrix, dataframe} of shape (n_sample, n_features)
y ndarray of shape (n_samples, ), default = None
目标值
**fit_params dict
附加拟合参数
返回值 说明
X_new ndarray array of shape (n_samples, n_features_new)
转化后的数组
get_params(self, deep=True)

[源码]

获取此估计量的参数。

参数 说明
deep bool, default = True
如果为真,则将返回此估计器和其所包含子对象的参数
返回值 说明
params mapping of string to any
参数名被映射至他们的值
inverse_transform(self, X)

[源码]

使用反函数变换X。

参数 说明
X array-like, shape (n_samples, n_features)
估计量参数.
返回值 说明
X_out array-like, shape (n_samples, n_features)
转换后的输入.
set_params(self, **params)

[源码]

设置此估算器的参数。

该方法适用于简单的估计器以及嵌套对象(例如管道)。

后者的参数形式为<component>__<parameter>这样就可以更新嵌套对象的每个组件。

参数 说明
params dict
估计量参数。
返回值 说明
self object
估计量实例。
transform(self, X)

[源码]

使用前向功能变换X。

参数 说明
X array-like, shape (n_samples, n_features)
输入数组。
返回值 说明
X_out X_outarray-like, shape (n_samples, n_features)
转换后的输入.