import pandas as pd import numpy as np import time data = pd.read_excel(r"C:/Users/86178/Desktop/test/test/TF-IDF/SSG hole span版.xlsx") data.head() """ 数据标准化:Z标准化 """ from sklearn.preprocessing import StandardScaler scaler = StandardScaler() data['Hole'] = scaler.fit_transform(data[['Hole']]) data['Span (m)'] = scaler.fit_transform(data[['Span (m)']]) data['Bridge length (m)'] = scaler.fit_transform(data[['Bridge length (m)']]) # 需要进行哑变量编码的列名列表 columns_to_encode = ["Pier type","Foundation type","Bearing type","Plane linear"] # 对指定列进行哑变量编码 data["Pier type"] = pd.get_dummies(df, "Pier type"=columns_to_encode)
时间: 2024-04-11 18:33:48 浏览: 98
pandas 对每一列数据进行标准化的方法
在你的代码中,对于指定的列进行了Z标准化处理,这是一种常见的数据标准化方法,用于将不同特征的数值转化为具有相同尺度的标准正态分布。接下来,你想对指定的列进行哑变量编码。
在进行哑变量编码之前,你需要使用`pd.get_dummies()`函数对指定的列进行编码。然而,在你的代码中,有一处使用了错误的语法。下面是修正后的代码:
```python
# 对指定列进行哑变量编码
data_encoded = pd.get_dummies(data, columns=columns_to_encode)
```
在上述代码中,`columns_to_encode`是一个包含需要进行哑变量编码的列名的列表。`pd.get_dummies()`函数可以对指定的列进行哑变量编码,并返回编码后的数据集`data_encoded`。
需要注意的是,在使用`pd.get_dummies()`函数时,需要将原始数据集`data`作为第一个参数传递,并使用`columns`参数指定需要进行编码的列。编码后的结果会覆盖原始数据集中指定的列,并添加新的列来表示哑变量。
你可以根据实际情况修改和扩展上述代码,以适应你的数据和需求。
阅读全文