ClassNamePrefixFeaturesOutMixin#

class sklearn.base.ClassNamePrefixFeaturesOutMixin[來源]#

用於透過加上前綴來產生自身名稱的轉換器的 Mixin 類別。

當轉換器需要產生自己的輸出特徵名稱時,此 mixin 很有用,例如 PCA。 例如,如果 PCA 輸出 3 個特徵,則產生的輸出特徵名稱為: ["pca0", "pca1", "pca2"]

此 mixin 假設在擬合轉換器時定義了 _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_featuresstr 陣列或 None,預設值為 None

僅用於驗證特徵名稱是否與在 fit 中看到的名稱一致。

返回:
feature_names_outstr 物件的 ndarray

轉換後的特徵名稱。