Pandas 中的 drop_duplicates()詳解
Pandas 中的 drop_duplicates()
Pandas 中的 drop_duplicates() 函數(shù)用于從 DataFrame 中刪除重復(fù)的行。該函數(shù)有一些參數(shù),允許你進(jìn)行不同方式的重復(fù)行處理。以下是 drop_duplicates() 函數(shù)的主要參數(shù)解析:
subset(可選參數(shù)):
作用:指定要考慮重復(fù)的列。
默認(rèn)值:None,表示考慮整個行的重復(fù)。
示例:df.drop_duplicates(subset=[‘column1’, ‘column2’])
keep(可選參數(shù)):
作用:指定保留哪些重復(fù)行。
可選值:‘first’:保留第一次出現(xiàn)的重復(fù)行(默認(rèn)值)。
‘last’:保留最后一次出現(xiàn)的重復(fù)行。
False:刪除所有重復(fù)行,不保留任何重復(fù)行。示例:df.drop_duplicates(keep=‘last’)
inplace(可選參數(shù)):
作用:如果設(shè)置為 True,將在原始 DataFrame 上執(zhí)行刪除操作,不返回新的 DataFrame。
默認(rèn)值:False,表示返回一個新的 DataFrame,原始 DataFrame 不受影響。
示例:df.drop_duplicates(inplace=True)
ignore_index(可選參數(shù)):
作用:如果設(shè)置為 True,刪除后的 DataFrame 將重新索引,以便索引從零開始。
默認(rèn)值:False。
示例:df.drop_duplicates(ignore_index=True)
subset 和 keep 參數(shù)的組合:
通常,subset 參數(shù)用于指定要考慮重復(fù)的列,而 keep 參數(shù)用于控制保留哪些重復(fù)行。例如,df.drop_duplicates(subset=[‘column1’, ‘column2’], keep=‘last’) 表示在 ‘column1’ 和 ‘column2’ 列上考慮重復(fù),但保留最后一次出現(xiàn)的重復(fù)行。
drop_duplicates() 函數(shù)通常用于數(shù)據(jù)清洗,以刪除數(shù)據(jù)中的重復(fù)記錄,以便進(jìn)行分析或建模。
你可以根據(jù)具體的需求使用不同的參數(shù)組合來執(zhí)行不同的重復(fù)行處理操作。
補(bǔ)充:
Pandas-去重函數(shù)drop_duplicates()詳解
Panda DataFrame 對象提供了一個數(shù)據(jù)去重的函數(shù) drop_duplicates(),本節(jié)對該函數(shù)的用法做詳細(xì)介紹。
格式介紹
drop_duplicates()函數(shù)的語法格式如下:
data.drop_duplicates(subset=['a','b','b'],keep='first',inplace=True)
參數(shù)說明如下:
subset:表示要進(jìn)去重的列名,默認(rèn)為 None。
keep:有三個可選參數(shù),分別是 first、last、False,默認(rèn)為 first,表示只保留第一次出現(xiàn)的重復(fù)項,刪除其余重復(fù)項,last 表示只保留最后一次出現(xiàn)的重復(fù)項,F(xiàn)alse 則表示刪除所有重復(fù)項。
inplace:布爾值參數(shù),默認(rèn)為 False 表示刪除重復(fù)項后返回一個副本,若為 Ture 則表示直接在原數(shù)據(jù)上刪除重復(fù)項。
示例數(shù)據(jù)
代碼:
import pandas as pd data = pd.DataFrame({ 'a':[2,1,1,1,1,1,2], 'b':[1,3,2,4,1,1,5], 'c':[1,3,2,4,1,1,3], 'd':[1,3,2,4,1,1,8] }) print (data)
打印結(jié)果
實際應(yīng)用
1、默認(rèn)保留第一次出現(xiàn)的重復(fù)項
代碼:
import pandas as pd data = pd.DataFrame({ 'a':[2,1,1,1,1,1,2], 'b':[1,3,2,4,1,1,5], 'c':[1,3,2,4,1,1,3], 'd':[1,3,2,4,1,1,8] }) data_del = data.drop_duplicates() print (data_del)
打印結(jié)果
2、刪除所有重復(fù)項
代碼:
import pandas as pd data = pd.DataFrame({ 'a':[2,1,1,1,1,1,2], 'b':[1,3,2,4,1,1,5], 'c':[1,3,2,4,1,1,3], 'd':[1,3,2,4,1,1,8] }) data_del = data.drop_duplicates(keep=False) print (data_del)
打印結(jié)果
3、根據(jù)指定列標(biāo)簽去重
代碼:
import pandas as pd data = pd.DataFrame({ 'a':[2,1,1,1,1,1,2], 'b':[1,3,2,4,1,1,5], 'c':[1,3,2,4,1,1,3], 'd':[1,3,2,4,1,1,8] }) data_del = data.drop_duplicates(subset=['b'],keep=False) print (data_del)
打印結(jié)果
4、指定多列同時去重
代碼:
import pandas as pd data = pd.DataFrame({ 'a':[2,1,1,1,1,1,2], 'b':[1,3,2,4,1,1,5], 'c':[1,3,2,4,1,1,3], 'd':[1,3,2,4,1,1,8] }) data_del = data.drop_duplicates(subset=['b','c'],keep=False) print (data_del)
打印結(jié)果
到此這篇關(guān)于Pandas 中的 drop_duplicates()的文章就介紹到這了,更多相關(guān)Pandas drop_duplicates()內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python實現(xiàn)給qq郵箱發(fā)送郵件的方法
這篇文章主要介紹了Python實現(xiàn)給qq郵箱發(fā)送郵件的方法,涉及Python郵件發(fā)送的相關(guān)技巧,需要的朋友可以參考下2015-05-05python無限生成不重復(fù)(字母,數(shù)字,字符)組合的方法
今天小編就為大家分享一篇python無限生成不重復(fù)(字母,數(shù)字,字符)組合的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-12-12python 自動化將markdown文件轉(zhuǎn)成html文件的方法
這篇文章主要介紹了python 自動化將markdown文件轉(zhuǎn)成html文件的方法的相關(guān)資料,本文介紹的非常詳細(xì),具有參考借鑒價值,需要的朋友可以參考下2016-09-09