ClassNamePrefixFeaturesOutMixin#

class sklearn.base.ClassNamePrefixFeaturesOutMixin#

Mixin类用于通过前缀生成自己的名称的转换器。

当转换器需要生成自己的特征名称时,这个mixin非常有用,例如:class:~sklearn.decomposition.PCA 。例如,如果:class:~sklearn.decomposition.PCA 输出3个特征,那么生成的特征名称是: ["pca0", "pca1", "pca2"]

这个mixin假设在转换器拟合时定义了一个 _n_features_out 属性。 _n_features_out 是转换器将在 transformfit_transform 中返回的输出特征的数量。

Examples

>>> import numpy as np
>>> from sklearn.base import ClassNamePrefixFeaturesOutMixin
>>> class MyEstimator(ClassNamePrefixFeaturesOutMixin):
...     def fit(self, X, y=None):
...         self._n_features_out = X.shape[1]
...         return self
>>> X = np.array([[1, 2], [3, 4]])
>>> MyEstimator().fit(X).get_feature_names_out()
array(['myestimator0', 'myestimator1'], dtype=object)
get_feature_names_out(input_features=None)#

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

输出特征名称将以小写的类名作为前缀。例如,如果转换器输出3个特征,那么输出特征名称将是: ["class_name0", "class_name1", "class_name2"]

Parameters:
input_features类似数组的对象或None,默认为None

仅用于验证特征名称与 fit 中看到的名称。

Returns:
feature_names_outndarray of str对象

转换后的特征名称。