温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

怎样清洗python分析的数据

发布时间:2026-09-25 07:45:10 来源:亿速云 阅读:114 作者:小樊 栏目:编程语言

“清洗 Python 分析的数据”一般指的是数据清洗(Data Cleaning),也就是把原始数据中存在的问题(缺失值、重复值、异常值、格式不一致等)处理掉,方便后续分析或建模。

下面我用常见场景 + Python 示例给你一个清晰的操作指南。


一、常用工具

最常用的是:

  • pandas(必学)
  • numpy
  • 有时用 re(正则)、datetime
import pandas as pd
import numpy as np

二、常见数据问题与清洗方法

1️⃣ 缺失值处理

df = pd.read_csv("data.csv")

# 查看缺失值
df.isnull().sum()

# 删除缺失值
df.dropna(inplace=True)

# 用均值/中位数填充
df["age"].fillna(df["age"].mean(), inplace=True)

# 用固定值填充
df["city"].fillna("未知", inplace=True)

2️⃣ 重复值处理

# 查看重复行
df.duplicated().sum()

# 删除重复行
df.drop_duplicates(inplace=True)

3️⃣ 数据类型转换

# 字符转数值
df["price"] = pd.to_numeric(df["price"], errors="coerce")

# 字符转日期
df["date"] = pd.to_datetime(df["date"], errors="coerce")

4️⃣ 字符串清洗(去空格、统一格式)

# 去空格
df["name"] = df["name"].str.strip()

# 转小写
df["city"] = df["city"].str.lower()

# 替换异常字符
df["gender"] = df["gender"].replace({"男": "M", "女": "F"})

5️⃣ 异常值处理(如年龄=200)

# 描述统计
df["age"].describe()

# 删除异常值
df = df[df["age"] < 120]

# 或用箱线法(IQR)
Q1 = df["age"].quantile(0.25)
Q3 = df["age"].quantile(0.75)
IQR = Q3 - Q1
df = df[(df["age"] >= Q1 - 1.5*IQR) & (df["age"] <= Q3 + 1.5*IQR)]

6️⃣ 列名清洗

df.columns = [col.strip().lower() for col in df.columns]

三、一个完整清洗示例

import pandas as pd

df = pd.read_csv("user.csv")

# 1. 去重
df.drop_duplicates(inplace=True)

# 2. 缺失值
df["age"].fillna(df["age"].median(), inplace=True)

# 3. 类型转换
df["register_time"] = pd.to_datetime(df["register_time"], errors="coerce")

# 4. 字符串清洗
df["city"] = df["city"].str.strip().str.lower()

# 5. 异常值
df = df[df["age"] < 120]

df.to_csv("clean_data.csv", index=False)

四、如果你愿意,我可以更针对性帮你

你可以告诉我:

  1. 数据是什么类型(Excel / CSV / 数据库)
  2. 遇到的主要问题(缺失、乱码、格式不对等)
  3. 是否用于机器学习或只是统计分析

我可以直接帮你写针对你数据的清洗代码。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI
助
手