尝试使用 DatetimeIndex 标准化 Pandas DataFrame 中的列时出现错误“unhashable type: 'Index'”

Bla*_*ion 1 python dataframe pandas

我有一个带有 DatetimeIndex 的 pandas DataFrame 和我想要标准化的列(重新缩放到 -1 和 1 之间)。当我尝试执行此操作时,遇到错误unhashable type: 'Index'。可能出了什么问题以及我该如何处理?

from sklearn.preprocessing import MinMaxScaler
scaler = MinMaxScaler()

df[[df.columns]] = scaler.fit_transform(df[[df.columns]])
Run Code Online (Sandbox Code Playgroud)

cs9*_*s95 5

由于df.columns已经是一个列表,因此这里不需要双括号。由于您尝试替换数据框中的所有值,我建议使用:

df[:] = scaler.fit_transform(df.values)
Run Code Online (Sandbox Code Playgroud)