您好,登錄后才能下訂單哦!
Pandas之drop_duplicates:去除重復項
方法
DataFrame.drop_duplicates(subset=None, keep='first', inplace=False)
參數
這個drop_duplicate方法是對DataFrame格式的數據,去除特定列下面的重復行。返回DataFrame格式的數據。
DataFrame中存在重復的行或者幾行中某幾列的值重復,這時候需要去掉重復行,示例如下:
data.drop_duplicates(subset=['A','B'],keep='first',inplace=True)
代碼中subset對應的值是列名,表示只考慮這兩列,將這兩列對應值相同的行進行去重。默認值為subset=None表示考慮所有列。
keep='first'表示保留第一次出現的重復行,是默認值。keep另外兩個取值為"last"和False,分別表示保留最后一次出現的重復行和去除所有重復行。
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去重,最好采用開頭提到的那行代碼。
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持億速云。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。