Pandas 10 大数据清洗技巧!

本人项目地址大全:Victor94-king/NLP__ManVictor: 优快云 of ManVictor


写在前面: 笔者更新不易,希望走过路过点个关注和赞,笔芯!!!

写在前面: 笔者更新不易,希望走过路过点个关注和赞,笔芯!!!

写在前面: 笔者更新不易,希望走过路过点个关注和赞,笔芯!!!


1、处理缺失数据:

缺失数据在数据分析中很常见。例如:

import pandas as pd
import numpy as np
# 创建一个包含缺失值的DataFrame
df = pd.DataFrame({'a': (1, 2, np.nan, 4), 'b': ('a', 'b', 'c', np.nan)})
# 删除包含缺失值的行
df.dropna(inplace=True)
# 用特定值填充缺失值
df.fillna(value=0, inplace=True)

2、 删除重复数据:

重复数据可能影响分析结果。例如:

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

3、数据类型转换:

确保数据类型正确很重要。例如:

# 将列转换为整数类型
df['a'] = df['a'].astype(int)

4、字符串处理:

方便处理文本数据。例如:

# 字符串大小写转换
df['b'] = df['b'].str.upper()

5、数据过滤:

根据条件过滤数据。例如:

# 过滤出列'a'中值大于2的行
filtered_df = df[df['a'] > 2]

6、 数据排序:

帮助理解数据分布。例如:

# 根据列'a'的值进行降序排序
df.sort_values(by='a', ascending=False, inplace=True)

7、 异常值处理:

异常值可能影响分析结果。

例如:

# 使用IQR方法识别并删除异常值
q1 = df['a'].quantile(0.25)
q3 = df['a'].quantile(0.75)
iqr = q3 - q1
df = df[~((df['a'] < (q1 - 1.5  iqr)) | (df['a'] > (q3 + 1.5  iqr)))]

8、 数据透视表:

数据分析的强大工具。

例如:

# 创建数据透视表
pivot_table = pd.pivot_table(df, values='a', index='b', aggfunc='mean')

9、合并和连接数据:

处理多个数据源时常用。例如:

df1 = pd.DataFrame({'key': ('k0', 'k1', 'k2', 'k3'), 'a': ('a0', 'a1', 'a2', 'a3')})
df2 = pd.DataFrame({'key': ('k0', 'k1', 'k2', 'k3'), 'b': ('b0', 'b1', 'b2', 'b3')})
# 合并数据
merged_df = pd.merge(df1, df2, on='key')

10、时间序列数据处理:

提供强大的处理功能。例如:

# 将字符串转换为日期时间格式
df['date'] = pd.to_datetime(df['date'])
# 设置时间为索引
df.set_index('date', inplace=True)
# 时间序列数据的重采样
df_resampled = df.resample('M').mean()
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

曼城周杰伦

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值