RT,Python中Dataframe 如何去重?
Dataframe 如何去重
慕的地8271018
2018-06-25 10:10:43
TA貢獻1803條經驗 獲得超6個贊
python中的pandas模塊中對重復數據去重步驟:
1)利用DataFrame中的duplicated方法返回一個布爾型的Series,顯示各行是否有重復行,沒有重復行顯示為FALSE,有重復行顯示為TRUE;
2)再利用DataFrame中的drop_duplicates方法用于返回一個移除了重復行的DataFrame。
注釋:
如果duplicated方法和drop_duplicates方法中沒有設置參數,則這兩個方法默認會判斷全部列元素都重復才返回,如果在這兩個方法中加入了指定的屬性名(或者稱為列名),例如:frame.drop_duplicates(['state']),則僅對指定列(state列)進行重復的判斷,決定是否返回改行。
具體實例如下:
>>> import pandas as pd
>>> data={'state':[1,1,2,2],'pop':['a','b','c','d']}
>>> frame=pd.DataFrame(data)
>>> frame
pop state
0 a 1
1 b 1
2 c 2
3 d 2
>>> IsDuplicated=frame.duplicated()
>>> print IsDuplicated
0 False
1 False
2 False
3 False
dtype: bool
>>> frame=frame.drop_duplicates(['state'])
>>> frame
pop state
0 a 1
2 c 2
>>> IsDuplicated=frame.duplicated(['state'])
>>> print IsDuplicated
0 False
2 False
dtype: bool
>>>舉報