pandas删除重复数据行

2020-08-22  本文已影响0人  数据小白周红艳

在处理pandas数据时,有时候需要删除重复数据,pandas为我们提供了drop_duplicates()函数。下面对其使用方法进行介绍:

# 首先导入常用的两个包
import pandas as pd
import numpy as np
# 建立一个dataframe数据
df = pd.DataFrame({'k1':['one']*3+['two']*4,'k2':[1,1,2,3,3,4,4]})
df['v1']=range(7)
df  
# 结果:
    k1  k2  v1
0   one 1   0
1   one 1   1
2   one 2   2
3   two 3   3
4   two 3   4
5   two 4   5
6   two 4   6
1.删除完全重复的行
df.drop_duplicates()
# 由于没有完全重复的行,因此返回结果跟原数据一致
# 结果:
    k1  k2  v1
0   one 1   0
1   one 1   1
2   one 2   2
3   two 3   3
4   two 3   4
5   two 4   5
6   two 4   6
2.按k1进行去重,对于重复项,保留第一次出现的值
df.drop_duplicates('k1',keep='first')
# 结果:
    k1  k2  v1
0   one 1   0
3   two 3   3
3.按k2和k1两列进行去重
df.drop_duplicates(['k2','k1'],keep='first')
# 结果:
    k1  k2  v1
0   one 1   0
2   one 2   2
3   two 3   3
5   two 4   5

keep:{‘first’, ‘last’, False}, 默认值 ‘first’

上一篇 下一篇

猜你喜欢

热点阅读