Pandas – Dataframe.Diplicated()
Python是一种做数据分析的伟大语言,主要是因为以数据为中心的Python软件包的奇妙生态系统。 Pandas是这些软件包之一,使导入和分析数据更加容易。
数据分析的一个重要部分是分析 重复的值 并移除它们。Pandas duplicated() 方法只帮助分析重复的值。它返回一个布尔系列,该系列仅对唯一元素为真。
语法:
DataFrame.duplicated(subset=None, keep='first')
参数:
subset: 默认值为none。在传递列之后,它将只考虑重复的列。
keep: 控制如何考虑重复值。它只有三个不同的值,默认值是’ first ‘。
– > 如果’ first ‘,它认为第一个值是唯一的,其余相同的值是重复的。
– > 如果’ last ‘,它认为最后一个值是唯一的,其余相同的值是重复的。
– > 如果为False,则将所有相同的值视为重复值。
Dataframe.Diplicated示例 #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)
# making a bool series
bool_series = data["First Name"].duplicated()
# displaying data
data.head()
# display data
data[bool_series]
输出:
如输出图片所示,由于保留参数是默认的,即 “第一”,因此,每当名字出现时,第一个被认为是唯一的,而不是重复的。
Dataframe.Diplicated示例 #2: 删除重复的内容
在这个例子中,keep参数被设置为False,所以只取Unique值,重复的值被从数据中删除。
# 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)
# making a bool series
bool_series = data["First Name"].duplicated(keep = False)
# bool series
bool_series
# passing NOT of bool series to see unique values only
data = data[~bool_series]
# displaying data
data.info()
data
输出:
由于Doubleicated()方法对Duplicates返回False,系列的NOT被用来查看数据框中的唯一值。