詳解pandas使用drop_duplicates去除DataFrame重復項參數(shù)
Pandas之drop_duplicates:去除重復項
方法
DataFrame.drop_duplicates(subset=None, keep='first', inplace=False)
參數(shù)
這個drop_duplicate方法是對DataFrame格式的數(shù)據,去除特定列下面的重復行。返回DataFrame格式的數(shù)據。
- subset : column label or sequence of labels, optional 用來指定特定的列,默認所有列
- keep : {‘first', ‘last', False}, default ‘first' 刪除重復項并保留第一次出現(xiàn)的項
- inplace : boolean, default False 是直接在原來數(shù)據上修改還是保留一個副本
DataFrame中存在重復的行或者幾行中某幾列的值重復,這時候需要去掉重復行,示例如下:
data.drop_duplicates(subset=['A','B'],keep='first',inplace=True)
代碼中subset對應的值是列名,表示只考慮這兩列,將這兩列對應值相同的行進行去重。默認值為subset=None表示考慮所有列。
keep='first'表示保留第一次出現(xiàn)的重復行,是默認值。keep另外兩個取值為"last"和False,分別表示保留最后一次出現(xiàn)的重復行和去除所有重復行。
inplace=True表示直接在原來的DataFrame上刪除重復項,而默認值False表示生成一個副本。
將副本賦值給dataframe:
data=data.drop_duplicates(subset=None,keep='first',inplace=False)
這一行代碼與文章開頭提到的那行代碼效果等效,但是如果在該DataFrame上新增一列:
data['extra']=test_data['item_price_level']
就會報如下錯誤:
SettingWithCopyWarning: A value is trying to be set on a copy of a slice from a DataFrame.
所以如果想對DataFrame去重,最好采用開頭提到的那行代碼。
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關文章
教你用Python+selenium搭建自動化測試環(huán)境
今天給大家?guī)淼氖顷P于Python的相關知識,文章圍繞著如何用Python+selenium搭建自動化測試環(huán)境展開,文中有非常詳細的介紹,需要的朋友可以參考下2021-06-06
es+flask搜索小項目實現(xiàn)分頁+高亮的示例代碼
本文主要介紹了es+flask搜索小項目實現(xiàn)分頁+高亮的示例代碼,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2022-01-01

