Pandas詳解二十一之移除重複數據

約定

import pandas as pd

移除重複數據

DataFrame中經常會出現重複行,利用duplicated()函數返回每一行判斷是否重複的結果(重複則爲True),drop_duplicates([key1,key2,..])則可去除重複行。

1 判斷每一行是否重複

df1=pd.DataFrame({'A':[1,1,1,2,2,3],'B':list("aabbbc")})
print(df1)
   A  B
0  1  a
1  1  a
2  1  b
3  2  b
4  2  b
5  3  c
df1.duplicated()
0    False
1     True
2    False
3    False
4     True
5    False
dtype: bool

2 去除全部的重複行

print(df1.drop_duplicates())
   A  B
0  1  a
2  1  b
3  2  b
5  3  c

3 指定列去除重複行

print(df1.drop_duplicates(['A']))
   A  B
0  1  a
3  2  b
5  3  c

4 保留重複行中的最後一行

print(df1.drop_duplicates(['A'],keep='last'))
   A  B
2  1  b
4  2  b
5  3  c

5 去除重複的同時改變DataFrame對象

df1.drop_duplicates(['A','B'],inplace=True)
print(df1)
   A  B
0  1  a
2  1  b
3  2  b
5  3  c

謝謝大家的瀏覽,
希望我的努力能幫助到您,
共勉!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章