Pandas删除数据的几种方法

数据删除的几种情况

1、删除具体列

#删除单列
df.drop("列名",axis = 1)
#删除多列
df.drop(["列名1","列名2"],axis = 1)
#或者
df.drop(columns=[1,3],inplace=True) 
# 删除指定位置列,使用columns属性来组合完成
df.drop(df.columns[[0,1]],axis=1)

2、删除具体行

#删除单行
df.drop("行索引")
#删除多行
df.drop(["行索引","行索引"])
#删除指定位置行
df.drop(df.index[[1,3]])

3、删除包含某些数值的行或者列

#删除A列小于100的数值
df[ df['A'] >= 100]

4、删除包含某些字符、文字的行或者列

#方法1:使用取反符号
df[~ df['列名'].str.contains('字符或文字')]
#方法2:drop方法
df.drop(df[(df["列名"].str.contains("字符") | tmp4["列名"].str.contains("字符"))].index)
#或者使用isin方法
df[~df["列名"].isin(["字符1","字符2"])]  

5、删除缺失行或列

5.1删除缺失行

# 删除包含缺失值的行
df.dropna()
# 删除全部为缺失值的行
df.dropna(how='all')
# 删除至少有2个缺失值的行
df.dropna(thresh=2)
# 根据指定的列删除包含缺失的行
df.dropna(subset=['列名'])

5.2删除缺失列

# 删除包含缺失值的列的两种方法
df.dropna(axis=1)	#df.dropna(axis='columns')
# 删除全部为缺失值的列
df.dropna(axis=1,how='all')
# 删除至少有2个缺失值的列
df.dropna(axis=1,thresh=2)
# 根据指定的行删除包含缺失的列,此时subset指的是行索引
df.dropna(axis=1,subset=[1])

6、删除重复数据

# 删除重复行,保留第一个重复行
df.drop_duplicates()
# 删除重复行,保留最后一个重复行
df.drop_duplicates(keep='last')
# 根据z列,删除重复行
df.drop_duplicates(subset=['z'])
# 重排序索引
df.drop_duplicates(ignore_index=True)
  • 10
    点赞
  • 95
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值