python的数据清理_Python数据清理,清洗

一.数据清洗与准备

1.缺失值

NaN(np.nan): 对数值型数据,浮点值NaN(not a number)

NA(not available)

None 均为缺失值,通过data.isnull()检测,反方法:data.notnull()

过滤(删除缺失值)

newdata = data.dropna()

等价于 data[data.notnull()]

默认删除含有缺失值的整行

可选参数:

how=‘all’:当一行全是缺失值才删除该行,否则不删除

axis=1:删除列

thresh=n:保留含有n个观测值的行

补全

newdata = data.fillna(value)

:将缺失值替换为value

为不同列的NA设置不同的填充值:传入字典data.fillna({列名:value,…})

常用可选参数(详见文档字符串):

inplace=True:修改原对象而不返回新对象;

method=:插值方法,(比如’ffill’:用前面的值填补后面所有的缺失值),

与limit=n搭配,设置前向或后向填充时最大填充范围;

axis=1:需要填充的轴

可以用数据的平均值或中位数填充NA:data.fillna(data.mean())

2.数据转换

去重

df.duplicated(): 是否有重复值,返回同大小的TF结构

newdata = df.drop_duplicates([‘col1’]):基于某些列删除重复值,默认保留第一条重复行

常用可选参数(详见文档字符串):

列名列表:基于某些列去重

keep=‘last’:保留最后一条重复行

series的逐元素转换:map

se.map(映射:函数或字典):每个元素传入到函数或字典中进行转换

字典就是映射!字典就是映射!字典就是映射!

# 创建肉类的数据框

data = pd.DataFrame({'food':['bacon','beef','Bacon','nova lox'],'weight':[4,3,12,6]})

print

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值