数据删除的几种情况

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)

推荐链接

评论可见,请评论后查看内容,谢谢!!!
 您阅读本篇文章共花了: