sklearn.pipeline.FeatureUnion

class sklearn.pipeline.FeatureUnion(transformer_list, *, n_jobs=None, transformer_weights=None, verbose=False)

连接多个转换器对象的结果。

这个估计器将转换器对象列表与输入数据并行应用,然后合并结果。这对于将多个特征提取机制组合到单个转换器中很有用。

可以使用转换器名称和以“__”分隔的参数名称来设置转换器的参数。可以通过将参数的名称设置为另一个转换器来完全替换一个转换器,也可以通过将其设置为“ drop”来删除它。

用户指南中阅读更多内容。

版本0.13中的新功能。

参数 说明
transformer_list list of (string, transformer) tuples
要应用于数据的转换器对象列表。每个元组的前半部分是转换器的名称。

在0.22版中进行了更改:==不建议设置None因为转换器支持“ drop”。==
n_jobs int, default=None
要并行运行的CPU数。 None除非在joblib.parallel_backend环境中,否则表示1 。 -1表示使用所有处理器。有关 更多详细信息,请参见词汇表

v0.20版中的更改:n_jobs默认从1更改为None
transformer_weights dict, default=None
每个转换器的特征权重。键是转换器名称,权重值。
verbose bool, default=False
如果为True,则在完成拟合时将会打印拟合每个转换器时所经过的时间。
属性
n_features_in_

另见:

sklearn.pipeline.make_union 便利的函数可简化特征合并结构。

示例

>>> from sklearn.pipeline import FeatureUnion
>>> from sklearn.decomposition import PCA, TruncatedSVD
>>> union = FeatureUnion([("pca", PCA(n_components=1)),
...                       ("svd", TruncatedSVD(n_components=2))])
>>> X = [[0.1.3], [2.2.5]]
>>> union.fit_transform(X)
array([[ 1.5       ,  3.0...,  0.8...],
       [-1.5       ,  5.7..., -0.4...]])

方法

方法 说明
fit(X[, y]) 使用X拟合所有转换器
fit_transform(X[, y]) 拟合所有转换器,转换数据并连接结果
get_feature_names() 获取所有转换器的特征名称。
get_params([deep]) 获取这个估计器的参数。
set_params(**kwargs) 为这个估计器设置参数。
transform(X) 由每个转换器分别转换X,连接结果
__init__(transformer_list, *, n_jobs=None, transformer_weights=None, verbose=False)

[源码]

初始化self。详情可参阅 type(self)的帮助。

fit(X, y=None, **fit_params)

[源码]

使用X拟合所有转换器

参数 说明
X iterable or array-like, depending on transformers
输入要转换的数据。
y array-like of shape (n_samples, n_outputs), default=None
监督学习的标签
返回值 说明
self FeatureUnion
这个估计器
fit_transform(X, y=None, **fit_params)

[源码]

拟合所有转换器,转换数据并连接结果

参数 说明
X iterable or array-like, depending on transformers
输入要转换的数据。
y array-like of shape (n_samples, n_outputs), default=None
监督学习的标签
返回值 说明
X_t array-like or sparse matrix of shape (n_samples, sum_n_components)
transformers. sum_n_components横向拼接的结果是转换器上n_components(输出维数)的和。
get_feature_names()

[源码]

获取所有转换器的特征名称。

返回值 说明
feature_names list of strings
转换产生的特征的名称。
get_params(deep=True)

[源码]

获取这个估计器的参数。

参数 说明
deep bool, default=True
如果为True,则将返回这个估计器的参数和所包含的估计器子对象。
返回值 说明
params mapping of string to any
参数名映射到其值
set_params(**kwargs)

[源码]

为这个估计器设置参数。

有效的参数键可以用get_params()列出。

返回值
self
transform(X)

[源码]

由每个转换器分别转换X,连接结果

参数 说明
X iterable or array-like, depending on transformers
输入要转换的数据。
返回值 说明
X_t array-like or sparse matrix of shape (n_samples, sum_n_components)
transformers. sum_n_components横向拼接的结果是转换器上n_components(输出维数)的和。

sklearn.pipeline.FeatureUnion使用示例