您好,登錄后才能下訂單哦!
Pandas之drop_duplicates:去除重復(fù)項(xiàng)
方法
DataFrame.drop_duplicates(subset=None, keep='first', inplace=False)
參數(shù)
這個(gè)drop_duplicate方法是對(duì)DataFrame格式的數(shù)據(jù),去除特定列下面的重復(fù)行。返回DataFrame格式的數(shù)據(jù)。
DataFrame中存在重復(fù)的行或者幾行中某幾列的值重復(fù),這時(shí)候需要去掉重復(fù)行,示例如下:
data.drop_duplicates(subset=['A','B'],keep='first',inplace=True)
代碼中subset對(duì)應(yīng)的值是列名,表示只考慮這兩列,將這兩列對(duì)應(yīng)值相同的行進(jìn)行去重。默認(rèn)值為subset=None表示考慮所有列。
keep='first'表示保留第一次出現(xiàn)的重復(fù)行,是默認(rèn)值。keep另外兩個(gè)取值為"last"和False,分別表示保留最后一次出現(xiàn)的重復(fù)行和去除所有重復(fù)行。
inplace=True表示直接在原來(lái)的DataFrame上刪除重復(fù)項(xiàng),而默認(rèn)值False表示生成一個(gè)副本。
將副本賦值給dataframe:
data=data.drop_duplicates(subset=None,keep='first',inplace=False)
這一行代碼與文章開頭提到的那行代碼效果等效,但是如果在該DataFrame上新增一列:
data['extra']=test_data['item_price_level']
就會(huì)報(bào)如下錯(cuò)誤:
SettingWithCopyWarning: A value is trying to be set on a copy of a slice from a DataFrame.
所以如果想對(duì)DataFrame去重,最好采用開頭提到的那行代碼。
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持億速云。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。