报错:AttributeError: ‘DataFrame‘ object has no attribute ‘reshape‘

这个错误通常发生在你试图在 Pandas DataFrame 上直接使用 `reshape` 方法时。`reshape` 方法通常与 NumPy 数组相关联,而不是 Pandas DataFrame。

如果你正在使用 Pandas DataFrame 并希望重新塑造它,你应该使用 Pandas 的重塑函数,如 `pivot`、`melt` 或其他根据具体需求的方法。

试图标准化的代码:

scaler = MinMaxScaler(feature_range=(-1, 1))
train_data_normalized = scaler.fit_transform(train_data .reshape(-1, 1))

报错:AttributeError: ‘DataFrame‘ object has no attribute ‘reshape‘_第1张图片 

在代码中,train_data 是一个 Pandas DataFrame,而 MinMaxScalerfit_transform 方法通常用于 NumPy 数组而不是 DataFrame。此外,reshape 也是 NumPy 数组的方法,而不是 Pandas DataFrame 的方法。

如果你要对 DataFrame 进行归一化,可以使用 Pandas 的 values 属性将 DataFrame 转换为 NumPy 数组,然后再使用 MinMaxScaler修改代码如下:

from sklearn.preprocessing import MinMaxScaler

# '主回路1热管段冷却剂温度(℃)306.852814' 是要归一化的列名
column_name = '主回路1热管段冷却剂温度(℃)306.852814'

# 将 DataFrame 转换为 NumPy 数组
train_data_array = train_data[column_name].values.reshape(-1, 1)

# 使用 MinMaxScaler 进行归一化
scaler = MinMaxScaler(feature_range=(-1, 1))
train_data_normalized = scaler.fit_transform(train_data_array)

 

你可能感兴趣的:(python错误处理归纳,python)