MaxAbsScaler#

class sklearn.preprocessing.MaxAbsScaler(*, copy=True)[來源]#

將每個特徵縮放到其最大絕對值。

此估計器會個別縮放和平移每個特徵,使得訓練集中每個特徵的最大絕對值將為 1.0。它不會移動/居中數據,因此不會破壞任何稀疏性。

此縮放器也可以應用於稀疏 CSR 或 CSC 矩陣。

MaxAbsScaler 並不會減少離群值的影響;它只會將它們線性縮放。 舉例來說,請參閱比較 MaxAbsScaler 與其他縮放器

在 0.17 版本中新增。

參數:
copybool,預設值為 True

設定為 False 以執行原地縮放並避免複製(如果輸入已經是 numpy 陣列)。

屬性:
scale_形狀為 (n_features,) 的 ndarray

每個特徵的資料相對縮放比例。

在 0.17 版本中新增:scale_ 屬性。

max_abs_形狀為 (n_features,) 的 ndarray

每個特徵的最大絕對值。

n_features_in_int

fit 期間看到的特徵數量。

在 0.24 版本中新增。

feature_names_in_形狀為 (n_features_in_,) 的 ndarray

fit 期間看到的特徵名稱。只有當 X 的特徵名稱都是字串時才會定義。

在 1.0 版本中新增。

n_samples_seen_int

估計器處理的樣本數量。會在新的 fit 呼叫時重置,但在 partial_fit 呼叫時遞增。

另請參閱

最大絕對值縮放

不使用估計器 API 的等效函式。

注意事項

NaN 被視為遺失值:在 fit 中忽略,並在 transform 中保持。

範例

>>> from sklearn.preprocessing import MaxAbsScaler
>>> X = [[ 1., -1.,  2.],
...      [ 2.,  0.,  0.],
...      [ 0.,  1., -1.]]
>>> transformer = MaxAbsScaler().fit(X)
>>> transformer
MaxAbsScaler()
>>> transformer.transform(X)
array([[ 0.5, -1. ,  1. ],
       [ 1. ,  0. ,  0. ],
       [ 0. ,  1. , -0.5]])
fit(X, y=None)[原始碼]#

計算用於後續縮放的最大絕對值。

參數:
X形狀為 (n_samples, n_features) 的 {類陣列,稀疏矩陣}

用於計算每個特徵的最小值和最大值的資料,以便後續沿特徵軸進行縮放。

yNone

忽略。

返回:
self物件

已擬合的縮放器。

fit_transform(X, y=None, **fit_params)[原始碼]#

擬合資料,然後轉換資料。

使用可選參數 fit_params 將轉換器擬合到 Xy,並返回 X 的轉換版本。

參數:
X形狀為 (n_samples, n_features) 的類陣列

輸入樣本。

y形狀為 (n_samples,) 或 (n_samples, n_outputs) 的類陣列,預設值為 None

目標值(對於無監督轉換為 None)。

**fit_paramsdict

其他擬合參數。

返回:
X_new形狀為 (n_samples, n_features_new) 的 ndarray 陣列

轉換後的陣列。

get_feature_names_out(input_features=None)[原始碼]#

取得轉換的輸出特徵名稱。

參數:
input_features字串的類陣列或 None,預設值為 None

輸入特徵。

  • 如果 input_featuresNone,則使用 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_out字串物件的 ndarray

與輸入特徵相同。

get_metadata_routing()[原始碼]#

取得此物件的中繼資料路由。

請查看使用指南,瞭解路由機制的運作方式。

返回:
routingMetadataRequest

一個封裝路由資訊的 MetadataRequest

get_params(deep=True)[原始碼]#

取得此估計器的參數。

參數:
deepbool,預設值為 True

如果為 True,將會傳回此估計器以及包含的子物件(屬於估計器)的參數。

返回:
paramsdict

參數名稱對應到其值的字典。

inverse_transform(X)[原始碼]#

將數據縮放回原始表示法。

參數:
X形狀為 (n_samples, n_features) 的 {類陣列,稀疏矩陣}

應該轉換回來的數據。

返回:
X_tr{ndarray, 稀疏矩陣},形狀為 (n_samples, n_features)

轉換後的陣列。

partial_fit(X, y=None)[原始碼]#

在線上計算 X 的最大絕對值,以供稍後縮放。

所有的 X 都會被當作單一批次處理。這適用於當由於 n_samples 的數量非常龐大,或由於 X 是從連續流讀取時,fit 不可行的情况。

參數:
X形狀為 (n_samples, n_features) 的 {類陣列,稀疏矩陣}

用於計算平均值和標準差的數據,以供稍後沿特徵軸縮放。

yNone

忽略。

返回:
self物件

已擬合的縮放器。

set_output(*, transform=None)[原始碼]#

設定輸出容器。

有關如何使用 API 的範例,請參閱介紹 set_output API

參數:
transform{“default”, “pandas”, “polars”}, 預設為 None

設定 transformfit_transform 的輸出。

  • "default":轉換器的預設輸出格式

  • "pandas":DataFrame 輸出

  • "polars":Polars 輸出

  • None:轉換設定不變

1.4 版本新增:新增了 "polars" 選項。

返回:
self估算器實例

估算器實例。

set_params(**params)[原始碼]#

設定此估算器的參數。

此方法適用於簡單的估算器以及巢狀物件(例如Pipeline)。後者的參數形式為 <component>__<parameter>,因此可以更新巢狀物件的每個元件。

參數:
**paramsdict

估算器參數。

返回:
self估算器實例

估算器實例。

transform(X)[原始碼]#

縮放數據。

參數:
X形狀為 (n_samples, n_features) 的 {類陣列,稀疏矩陣}

應該縮放的數據。

返回:
X_tr{ndarray, 稀疏矩陣},形狀為 (n_samples, n_features)

轉換後的陣列。