ClassNamePrefixFeaturesOutMixin#

sklearn.base.ClassNamePrefixFeaturesOutMixin[源]#

通过添加前缀来生成自身名称的转换器的混入类。

当转换器需要生成自己的输出特征名称时(例如 PCA),这个混入类很有用。例如,如果 PCA 输出3个特征,则生成的输出特征名称为:["pca0", "pca1", "pca2"]

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

示例

>>> import numpy as np
>>> from sklearn.base import ClassNamePrefixFeaturesOutMixin, BaseEstimator
>>> class MyEstimator(ClassNamePrefixFeaturesOutMixin, BaseEstimator):
...     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"]

参数:
input_features类数组对象,包含字符串或None,默认为None

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

返回:
feature_names_out字符串对象组成的 ndarray

转换后的特征名称。