使用 Scikit-learn 中的 Column Transformer 时如何找出 StandardScaling 参数 .mean_ 和 .scale_?

How to find out StandardScaling parameters .mean_ and .scale_ when using Column Transformer from Scikit-learn?

我想使用函数 sklearn.compose.ColumnTransformer 将 StandardScaler 仅应用于我的数据集的数字部分(其余部分已经进行了单热编码)。我希望看到 .scale_.mean_ 参数适合训练数据,但是函数 scaler.mean_scaler.scale_ 在使用列变换器时显然不起作用。有办法吗?

X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, random_state=42, stratify=y)

scaler = StandardScaler()
data_pipeline = ColumnTransformer([
 ('numerical', scaler, numerical_variables)], remainder='passthrough')

X_train = data_pipeline.fit_transform(X_train)

适合的变压器在属性 transformers_(列表)和 named_transformers_(类似字典,键为您提供的名称)中可用。所以,例如,

data_pipeline.named_transformers_['numerical'].mean_