pandas删除数据、空缺值处理、重复值处理

1.删除指定的行或列
t1 = pd.DataFrame(np.arange(12).reshape((3,4)).astype("int"), index = list("abc"), columns = list("ABCD"))

#若不指定轴则 默认删除行
t1.drop('a', inplace = False)
#指定axis=1 则删除列
t1.drop('A', axis = 1, inplace = False)
t1.drop(['A', 'B'], axis = 1, inplace = False)
2.空缺值处理
#缺失数据处理
t1 = pd.DataFrame(np.arange(12).reshape((3,4)).astype("int"), index = list("abc"), columns = list("ABCD"))
t1.iloc[0,0] = np.nan

#判断是否为nan 返回一个值为布尔类型的DataFrame
pd.isnull(t1) 
pd.notnull(t1)

t1[pd.notnull(t1['A'])]

#去除空缺值 any代表行/列只要出现nan就删除 all代表全部为nan时才删除
t1.dropna(axis = 0, how = "any", inplace =False)
t1.dropna(axis = 0, how = "all", inplace = False)

#空缺值填充
t1.fillna(t1.mean())
3.重复值处理
df= pd.DataFrame({'k1': [ 's1']* 3 + ['s2']* 5,'k2' : [1, 2, 3, 4, 5, 6, 4,4]})
print(df)

#判断是否存在重复值 返回一列布尔值
df.duplicated()
df.duplicated('k2')
df.duplicated(['k1', 'k2'])

df.drop_duplicates(inplace = False)
df.drop_duplicates('k2',inplace = False)
df.drop_duplicates(['k1', 'k2'],inplace = False)
  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值