Примечание
Перейти к концу для скачивания полного примера кода. или для запуска этого примера в вашем браузере через JupyterLite или Binder
Введение в API set_output
Этот пример продемонстрирует API set_output для настройки преобразователей на вывод таблиц pandas DataFrame. set_output можно настроить для каждого оценочного объекта, вызвав метод set_output, или глобально, установив set_config(transform_output="pandas"). Подробнее см. SLEP018.
Сначала загрузим набор данных iris в виде DataFrame, чтобы продемонстрировать API set_output.
from sklearn.datasets import load_iris from sklearn.model_selection import train_test_split X, y = load_iris(as_frame=True, return_X_y=True) X_train, X_test, y_train, y_test = train_test_split(X, y, stratify=y, random_state=0) X_train.head()
Чтобы настроить такой оценочный объект, как preprocessing.StandardScaler, на возврат DataFrames, вызовите set_output. Для этой функции требуется пакет pandas.
from sklearn.preprocessing import StandardScaler scaler = StandardScaler().set_output(transform="pandas") scaler.fit(X_train) X_test_scaled = scaler.transform(X_test) X_test_scaled.head()
set_output можно вызвать после fit, чтобы настроить transform задним числом.
scaler2 = StandardScaler()
scaler2.fit(X_train)
X_test_np = scaler2.transform(X_test)
print(f"Default output type: {type(X_test_np).__name__}")
scaler2.set_output(transform="pandas")
X_test_df = scaler2.transform(X_test)
print(f"Configured pandas output type: {type(X_test_df).__name__}")
Default output type: ndarray Configured pandas output type: DataFrame
В pipeline.Pipeline, set_output настраивает все этапы на вывод DataFrames.
from sklearn.feature_selection import SelectPercentile
from sklearn.linear_model import LogisticRegression
from sklearn.pipeline import make_pipeline
clf = make_pipeline(
StandardScaler(), SelectPercentile(percentile=75), LogisticRegression()
)
clf.set_output(transform="pandas")
clf.fit(X_train, y_train)
© 2007–2025 The scikit-learn developers
Licensed under the 3-clause BSD License.
https://scikit-learn.org/1.6/auto_examples/miscellaneous/plot_set_output.html
