當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Python Pandas dataframe.drop_duplicates()用法及代碼示例


Python是進行數據分析的一種出色語言,主要是因為以數據為中心的python軟件包具有奇妙的生態係統。 Pandas是其中的一種,使導入和分析數據更加容易。

數據分析的重要部分是分析重複值並將其刪除。 Pandas drop_duplicates()方法有助於從 DataFrame 中刪除重複項。

用法:DataFrame.drop_duplicates(subset=None, keep=’first’, inplace=False)

參數:
subset:子集采用一列或一列標簽列表。默認值為無。傳遞列後,它將僅將它們視為重複項。
keep:keep是控製如何考慮重複值。它隻有三個不同的值,默認值為“第一”。

  • 如果為“第一個”,則它將第一個值視為唯一值,並將其餘相同的值視為重複值。
  • 如果為“ last”,則它將last值視為唯一值,並將其餘相同的值視為重複值。
  • 如果為False,則將所有相同的值視為重複項

inplace:布爾值,如果為True,則刪除重複的行。

返回類型:根據傳遞的參數刪除了重複行的DataFrame。

要下載使用的CSV文件,請單擊此處。

範例1:刪除具有相同名字的行
在以下示例中,具有相同名字的行將被刪除,並返回一個新的數據幀。

# importing pandas package 
import pandas as pd 
  
# making data frame from csv file 
data = pd.read_csv("employees.csv") 
  
# sorting by first name 
data.sort_values("First Name", inplace = True) 
  
# dropping ALL duplicte values 
data.drop_duplicates(subset ="First Name", 
                     keep = False, inplace = True) 
  
# displaying data 
data

輸出:
如圖所示,具有相同名稱的行已從 DataFrame 中刪除。

範例2:刪除所有重複值的行
在此示例中,將刪除具有所有值的行。由於csv文件沒有這樣的行,因此將複製一個隨機行,然後將其首先插入數據幀。

#importing pandas package 
import pandas as pd 
  
# making data frame from csv file 
data = pd.read_csv("employees.csv") 
  
#length before adding row 
length1 = len(data) 
  
# manually inserting duplicate of a row of row 440 
data.loc[1001] = [data["First Name"][440], 
                  data["Gender"][440], 
                  data["Start Date"][440], 
                  data["Last Login Time"][440], 
                  data["Salary"][440], 
                  data["Bonus %"][440], 
                  data["Senior Management"][440], 
                  data["Team"][440]] 
                    
  
# length after adding row 
length2=  len(data) 
  
# sorting by first name 
data.sort_values("First Name", inplace=True) 
  
# dropping duplicate values 
data.drop_duplicates(keep=False,inplace=True) 
  
# length after removing duplicates 
length3=len(data) 
  
# printing all data frame lengths  
print(length1, length2, length3)

輸出:
如輸出圖像中所示,刪除重複項後的長度為999。由於keep參數設置為False,因此刪除了所有重複行。



相關用法


注:本文由純淨天空篩選整理自Kartikaybhutani大神的英文原創作品 Python | Pandas dataframe.drop_duplicates()。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。