欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 健康 > 美食 > 数据清洗的定义跟实际操作

数据清洗的定义跟实际操作

2025/5/1 7:23:00 来源:https://blog.csdn.net/2301_81527420/article/details/147634459  浏览:    关键词:数据清洗的定义跟实际操作

数据清洗的定义

数据清洗(Data Cleaning) 是指对原始数据进行处理,以纠正、删除或填补不完整、不准确、重复或无关的数据,使其符合分析或建模的要求。数据清洗是数据预处理的关键步骤,直接影响后续分析和机器学习模型的效果。


数据清洗的主要任务

  1. 处理缺失值

    • 删除缺失值(Drop)

    • 填充缺失值(均值、中位数、众数、插值、预测填充)

  2. 处理异常值

    • 删除(如超出合理范围的数据)

    • 修正(如用上下限替换)

  3. 处理重复数据

    • 删除完全重复的行

  4. 格式标准化

    • 统一日期、时间、单位、字符串格式(如"USA" vs "United States")

  5. 数据类型转换

    • 字符串转数值、日期解析、分类变量编码(One-Hot Encoding)

  6. 数据归一化/标准化

    • Min-Max归一化、Z-Score标准化


实际操作案例(Python + Pandas)

案例背景

假设有一份销售数据 sales_data.csv,包含以下字段:

  • order_id(订单ID)

  • customer_name(客户名,可能有缺失或重复)

  • order_date(日期,可能有格式不一致)

  • price(价格,可能有异常值)

  • quantity(数量,可能有缺失值)

数据清洗代码示例

python

复制

下载

import pandas as pd
import numpy as np# 1. 加载数据
df = pd.read_csv("sales_data.csv")# 2. 查看数据基本情况
print(df.head())  # 查看前几行
print(df.info())  # 查看数据类型和缺失情况
print(df.describe())  # 数值统计(均值、最大最小值等)# 3. 处理缺失值
# 删除所有缺失的行(谨慎使用,可能丢失大量数据)
df_cleaned = df.dropna()  
# 或用均值填充数值列
df["quantity"].fillna(df["quantity"].mean(), inplace=True)  
# 用"Unknown"填充文本列
df["customer_name"].fillna("Unknown", inplace=True)  # 4. 处理重复数据
df.drop_duplicates(inplace=True)  # 删除完全重复的行# 5. 处理异常值(假设price不应超过1000)
df = df[df["price"] <= 1000]  # 删除异常值
# 或用上限替换
df["price"] = df["price"].clip(upper=1000)  # 超过1000的值替换为1000# 6. 格式标准化(统一日期格式)
df["order_date"] = pd.to_datetime(df["order_date"], format="%Y-%m-%d")  # 统一为YYYY-MM-DD# 7. 数据标准化(归一化)
df["price_normalized"] = (df["price"] - df["price"].min()) / (df["price"].max() - df["price"].min())# 8. 保存清洗后的数据
df.to_csv("cleaned_sales_data.csv", index=False)

典型数据清洗场景

  1. 电商数据清洗

    • 处理订单数据中的缺失地址

    • 修正商品价格异常(如负值或极大值)

    • 合并重复客户记录

  2. 金融风控数据清洗

    • 填补缺失的交易金额

    • 检测并处理异常交易(如突然大额转账)

  3. 社交媒体数据清洗

    • 去除重复的评论

    • 标准化用户昵称(如大小写统一)


总结

  • 数据清洗目标:提高数据质量,使其适合分析或建模。

  • 常见操作:处理缺失值、异常值、重复数据、格式标准化。

  • 工具推荐

    • Python(Pandas、NumPy)

    • SQL(去重、缺失值处理)

    • OpenRefine(可视化数据清洗工具)

通过数据清洗,可以显著提升后续数据分析的准确性和可靠性。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词