GenericUnivariateSelect#
- class sklearn.feature_selection.GenericUnivariateSelect(score_func=<function f_classif>, *, mode='percentile', param=1e-05)[原始碼]#
具有可配置策略的單變量特徵選擇器。
請參閱 使用者指南 以取得更多資訊。
- 參數:
- score_func可呼叫物件,預設值為 f_classif
接受兩個陣列 X 和 y,並傳回一對陣列 (scores, pvalues) 的函數。對於模式 'percentile' 或 'kbest',它可以傳回單一陣列 scores。
- mode{‘percentile’, ‘k_best’, ‘fpr’, ‘fdr’, ‘fwe’},預設值為 ‘percentile’
特徵選擇模式。請注意,
'percentile'
和'kbest'
模式支援無監督的特徵選擇 (當y
為None
時)。- param“all”、浮點數或整數,預設值為 1e-5
對應模式的參數。
- 屬性:
另請參閱
f_classif
用於分類任務的標籤/特徵之間的 ANOVA F 值。
mutual_info_classif
用於離散目標的互資訊。
chi2
用於分類任務的非負特徵的卡方統計量。
f_regression
用於迴歸任務的標籤/特徵之間的 F 值。
mutual_info_regression
用於連續目標的互資訊。
SelectPercentile
根據最高分數的百分位數選擇特徵。
SelectKBest
根據 k 個最高分數選擇特徵。
SelectFpr
根據假陽性率測試選擇特徵。
SelectFdr
根據估計的錯誤發現率選擇特徵。
SelectFwe
根據家族誤差率選擇特徵。
範例
>>> from sklearn.datasets import load_breast_cancer >>> from sklearn.feature_selection import GenericUnivariateSelect, chi2 >>> X, y = load_breast_cancer(return_X_y=True) >>> X.shape (569, 30) >>> transformer = GenericUnivariateSelect(chi2, mode='k_best', param=20) >>> X_new = transformer.fit_transform(X, y) >>> X_new.shape (569, 20)
- fit(X, y=None)[原始碼]#
在 (X, y) 上執行評分函數並取得適當的特徵。
- 參數:
- X形狀為 (n_samples, n_features) 的類陣列
訓練輸入樣本。
- y形狀為 (n_samples,) 的類陣列或 None
目標值(分類中的類別標籤,迴歸中的實數)。如果選擇器是無監督的,則
y
可以設定為None
。
- 回傳值:
- self物件
傳回實例本身。
- fit_transform(X, y=None, **fit_params)[原始碼]#
擬合資料,然後轉換資料。
使用選用參數
fit_params
將轉換器擬合至X
和y
,並傳回X
的轉換版本。- 參數:
- X形狀為 (n_samples, n_features) 的類陣列
輸入樣本。
- y形狀為 (n_samples,) 或 (n_samples, n_outputs) 的類陣列,預設值為 None
目標值(對於無監督轉換為 None)。
- **fit_params字典
其他擬合參數。
- 回傳值:
- X_new形狀為 (n_samples, n_features_new) 的 ndarray 陣列
已轉換的陣列。
- get_feature_names_out(input_features=None)[原始碼]#
根據選取的特徵遮罩特徵名稱。
- 參數:
- input_featuresstr 或 None 的類陣列,預設值為 None
輸入特徵。
如果
input_features
為None
,則feature_names_in_
會用作輸入特徵名稱。如果未定義feature_names_in_
,則會產生以下輸入特徵名稱:["x0", "x1", ..., "x(n_features_in_ - 1)"]
。如果
input_features
為類陣列,則如果已定義feature_names_in_
,則input_features
必須與feature_names_in_
相符。
- 回傳值:
- feature_names_outstr 物件的 ndarray
已轉換的特徵名稱。
- get_metadata_routing()[原始碼]#
取得此物件的中繼資料路由。
請查看 使用者指南 以了解路由機制的運作方式。
- 回傳值:
- routingMetadataRequest
一個封裝路由資訊的
MetadataRequest
。
- get_params(deep=True)[原始碼]#
取得此估算器的參數。
- 參數:
- deepbool,預設值為 True
若為 True,將回傳此估算器及其包含的子物件(也是估算器)的參數。
- 回傳值:
- paramsdict
參數名稱對應到其值的字典。
- get_support(indices=False)[原始碼]#
取得選定特徵的遮罩或整數索引。
- 參數:
- indicesbool,預設值為 False
若為 True,則回傳值將為整數陣列,而不是布林遮罩。
- 回傳值:
- support陣列
一個從特徵向量中選取保留特徵的索引。若
indices
為 False,則此為形狀為 [# 輸入特徵] 的布林陣列,其中元素為 True 若且唯若其對應的特徵被選取保留。若indices
為 True,則此為形狀為 [# 輸出特徵] 的整數陣列,其值為輸入特徵向量的索引。
- inverse_transform(X)[原始碼]#
反轉轉換操作。
- 參數:
- X形狀為 [n_samples, n_selected_features] 的陣列
輸入樣本。
- 回傳值:
- X_r形狀為 [n_samples, n_original_features] 的陣列
X
,其中插入零值列,代表會被transform
移除的特徵。
- set_output(*, transform=None)[原始碼]#
設定輸出容器。
請參考 介紹 set_output API 以了解如何使用此 API 的範例。
- 參數:
- transform{“default”, “pandas”, “polars”},預設值為 None
設定
transform
和fit_transform
的輸出。"default"
:轉換器的預設輸出格式"pandas"
:DataFrame 輸出"polars"
:Polars 輸出None
:轉換配置保持不變
於 1.4 版本加入:新增了
"polars"
選項。
- 回傳值:
- self估算器實例
估算器實例。