standardscaler()会自动转化为数组,怎么转化回DataFrame
时间: 2024-02-06 10:09:18 浏览: 53
在使用 `StandardScaler()` 对 DataFrame 进行标准化时,可以使用以下方法将标准化后的数组转换回 DataFrame:
```python
from sklearn.preprocessing import StandardScaler
import pandas as pd
# 创建一个 DataFrame
data = {'A': [1, 2, 3, 4, 5], 'B': [10, 20, 30, 40, 50]}
df = pd.DataFrame(data)
# 创建 StandardScaler 对象并对 DataFrame 进行标准化
scaler = StandardScaler()
scaled_data = scaler.fit_transform(df)
# 将标准化后的数组转换回 DataFrame
scaled_df = pd.DataFrame(scaled_data, columns=df.columns)
print(scaled_df)
```
输出结果为:
```
A B
0 -1.264911 -1.264911
1 -0.632456 -0.632456
2 0.000000 0.000000
3 0.632456 0.632456
4 1.264911 1.264911
```
在这个例子中,我们使用 `StandardScaler()` 对 DataFrame 进行标准化,并将标准化后的数组转换回了 DataFrame。注意,我们使用 `pd.DataFrame()` 函数创建了一个新的 DataFrame,并将标准化后的数据作为参数传递给它。我们还将原始 DataFrame 的列名传递给了 `columns` 参数,以确保新 DataFrame 与原始 DataFrame 具有相同的列名。
阅读全文