数据清洗与特征工程:Python Pandas 实践指南
数据清洗与特征工程:Python Pandas 实践指南
本文将使用 Python Pandas 库演示数据清洗和特征工程的基本步骤,涵盖了缺失值处理、重复值去除、异常值处理、数据归一化、标准化等常见操作。
1. 读取数据
import pandas as pd
# 读取数据
data = pd.read_excel('E:/pythonProject5/深度学习/新建 XLS 工作表.xls')
# 打印数据的列名
print(data.columns)
2. 数据清洗
2.1 删除缺失值
# 删除缺失值
data.dropna(inplace=True)
2.2 删除重复值
# 删除重复值
data.drop_duplicates(inplace=True)
2.3 处理异常值
# 处理异常值
data = data[(data['score'] >= 0) & (data['score'] <= 100)]
3. 特征工程
3.1 数据归一化
3.1.1 最小-最大规范化
# 最小-最大规范化
def min_max_scale(data):
return (data - data.min()) / (data.max() - data.min())
# 对数据进行归一化
data['score'] = min_max_scale(data['score'])
3.1.2 Z-score规范化
# Z-score规范化
def z_score_scale(data):
return (data - data.mean()) / data.std()
# 对数据进行归一化
data['score'] = z_score_scale(data['score'])
3.2 数据标准化
3.2.1 Box-Cox变换
from scipy.stats import boxcox
# Box-Cox变换
data['score'], _ = boxcox(data['score'])
# 对数据进行标准化
data['score'] = z_score_scale(data['score'])
3.2.2 Yeo-Johnson变换
from scipy.stats import yeojohnson
# Yeo-Johnson变换
data['score'], _ = yeojohnson(data['score'])
# 对数据进行标准化
data['score'] = z_score_scale(data['score'])
4. 错误解决
请提供错误信息或提示,以便更好地诊断问题并提供解决方案。
注意:
- 本文提供了一个数据清洗和特征工程的基本流程,具体操作需要根据实际情况进行调整。
- 代码示例仅供参考,请根据自己的数据和目标进行修改。
- 为了使代码更易于理解,建议您在实际操作中添加注释。
- 为了提高代码效率,建议您使用 NumPy 和 Pandas 的向量化操作。
原文地址: https://www.cveoy.top/t/topic/oYIp 著作权归作者所有。请勿转载和采集!