python数据清洗--数据预处理

本文详细介绍了Python数据清洗过程,包括处理重复值(如订单数据),缺失值的识别与填充(如均值、前向、后向替换),异常值检测与处理(如箱线图法、标准差法),以及数据离散化(等频、等宽分箱)。通过pandas库的函数如pd.cut和pd.qcut实现数据分箱,提高数据分析的准确性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1. 重复值处理

• 数据清洗一般先从重复值和缺失值开始处理
• 重复值一般采取删除法来处理
• 但有些重复值不能删除,例如订单明细数据或交易明细数据等

df.head(5)
#对价格和里程数数据进行处理
# 自定义一个函数
def f(x):
    if '$' in str(x):
        x = str(x).strip('$')
        x = str(x).replace(',','')
    else:
        x = str(x).replace(',','')
    return float(x)
df['Price'] =  df['Price'] .apply(f)
df['Mileage'] = df['Mileage'].apply(f)
print ('数据集是否存在重复观测: \n', any(df.duplicated()))
df[df.duplicated()] #查看那些数据重复
np.sum(df.duplicated()) #计算重复数量
df.drop_duplicates() #删除所有变量都重复的行, 注意没有加inplace = True
df.drop_duplicates(subset= ['Condition','Condition_Desc','Price','Location'],inplace=True) #按照两个变量重复来来去重
df.info()

2. 缺失值处理

• 缺失值首先需要根据实际情况定义
• 可以采取直接删除法
• 有时候需要使用替换法或者插值法
• 常用的替换法有均值替换、前向、后向替换和常数替换

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值