pandas数据清洗

1.重命名函数(作用于行列):df.rename()

df.rename(columns={'id':'student_id','first':'first_name','last':'last_name','age':'age_in_years'},inplace=True)
df.rename(columns={'id':'student_id','first':'first_name','last':'last_name','age':'age_in_years'},index={0:'a',1:'b',3:'c'},inplace=True)

2.排序函数(作用于行列)

(1)按标签排序:df.sort_index(axis=0/1,ascending=True/False) 

注:默认按axis=0的行标签进行升序排序

df.sort_index(ascending=False)

(2)按值排序:df.sort_value(by='列名')

3.去重函数:df.drop_duplicates(subset=['A','B','C'],keep='first',inplace=True)

subset可指定去重列

keep指定是否保留重复列,keep=False则不保留(first / last保留第一次/最后一次出现的重复项)

inplace指定是否修改当前df,inplace=True则修改,False则返回新的结果df

df.drop_duplicates(subset='email', keep='first', inplace=True)

补充:df.duplicated()——检查是否有重复值

4.缺失值处理函数集锦

(1)替换缺失值:df.fillna(n)或者df.replace(old,new)或者df.replace({0:'a',1:'b'})

df.replace({10:'a',20:'b'})

(2)删除缺失值:df.dropna(axis=0, how='any', thresh=None, subset=None, inplace=False)

axis决定行列(0/1)

how决定是否删除(any:存在NA值就删除;all:全都为NA值才删除)

thresh决定最小多少个NA值保留当前行或列

subset决定是否根据某个行or列的某个标签来删除

inplace决定是否修改df本身(True则修改,False则不修改)

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值