这是我第一次使用 ColumnTransformer,我遇到了数组维度的问题。
这是我的名为“concat_data”的数据框:
Date Hour Observation
0 01/09/2015 0 10
1 01/09/2015 1 9
2 01/09/2015 2 8
3 01/09/2015 3 10
4 01/09/2015 4 12
我正在尝试使用以下代码仅在 Observation 列上应用标准缩放器:
preprocessor = ColumnTransformer(
transformers=[
('num', StandardScaler(), ['Observation'])],
remainder="passthrough")
preprocessor.fit(concat_data, concat_data['Observation'])
我收到此错误消息:
ValueError: 1D 数据传递给需要 2D 数据的转换器。尝试将列选择指定为一个项目的列表而不是标量。
我可以在没有 ColumnTransformer 的情况下做到这一点,但我的目标是了解 ColumnTransformer 的工作原理。例如,此代码有效:
StandardScaler().fit(concat_data[['Observation']])
谢谢大家!