unique()
pandas.Series.unique()
其中,pandas
是库的名称,Series
表示数据的类型为Series对象,unique()
是方法的名称。
unique()
方法返回一个包含唯一值的NumPy数组。返回的结果按照出现的顺序排列,并且不包括缺失值(NaN)。
对于DataFrame对象,如果我们需要获取某一列的唯一值,需要通过列名进行选取,然后调用unique()
方法。下面是一个示例代码:
import pandas as pd
data = {'Name': ['Alice', 'Bob', 'Charlie', 'Bob', 'Dave'],
'Age': [25, 28, 22, 28, 30]}
df = pd.DataFrame(data)
unique_names = df['Name'].unique()
print(unique_names)
代码运行结果如下所示:
['Alice' 'Bob' 'Charlie' 'Dave']
以上代码中,我们创建了一个包含姓名和年龄的数据字典,并将其转化为DataFrame对象。然后,我们通过df['Name']
选取了数据中的姓名列,并调用unique()
方法得到了该列的唯一值。
我们通过一个更具体的示例来演示unique()
方法的使用。假设我们有一个包含国家名称的DataFrame对象,我们希望获取其中的唯一国家列表。下面是示例代码:
import pandas as pd
data = {'Country': ['China', 'USA', 'China', 'India', 'USA', 'Russia']}
df = pd.DataFrame(data)
unique_countries = df['Country'].unique()
print(unique_countries)
代码运行结果如下所示:
['China' 'USA' 'India' 'Russia']
通过选择数据中的Country
列,并调用unique()
方法,我们可以快速获取到该列中唯一的国家名称列表。
在数据分析中,经常会遇到包含缺失值的数据。unique()
方法默认会忽略缺失值(NaN),并返回剩下的唯一值。下面是一个示例代码:
import pandas as pd
import numpy as np
data = {'Color': ['Red', 'Blue', np.nan, 'Green', 'Red']}
df = pd.DataFrame(data)
unique_colors = df['Color'].unique()
print(unique_colors)
代码运行结果如下所示:
['Red' 'Blue' 'Green']
在以上代码中,我们创建了一个包含颜色信息的DataFrame对象,并将其中一个颜色值设为了缺失值(NaN)。通过unique()
方法,我们得到了去除缺失值后的唯一颜色列表。
unique()
方法同样支持获取多列数据的唯一值。我们可以传入一个包含多个列名的列表,得到这些列数据的唯一组合。下面是一个示例代码:
import pandas as pd
data = {'Name': ['Alice', 'Bob', 'Charlie', 'Bob', 'Dave'],
'Age': [25, 28, 22, 28, 30],
'Country': ['China', 'USA', 'China', 'India', 'USA']}
df = pd.DataFrame(data)
unique_records = df[['Name', 'Age', 'Country']].unique()
print(unique_records)
代码运行结果如下所示:
[['Alice' 25 'China']
['Bob' 28 'USA']
['Charlie' 22 'China']
['Bob' 28 'India']
['Dave' 30 'USA']]
以上代码中,我们选取了数据中的两列’Name’和’Age’,以及一列’Country’,并调用unique()
方法。结果是一个包含唯一组合的二维数组。
通过本文的介绍,我们了解了pandas中求一列数据的唯一值的方法unique()
的用法及其相关知识点。该方法可以应用于Series对象和DataFrame对象,返回数据列中的唯一值,并通过不同的参数设置实现各种功能。
在数据分析和处理的过程中,经常需要对数据进行去重操作,并获取数据中某一列的唯一值。unique()
方法提供了非常方便和高效的实现方式,使得我们能够更好地分析和处理数据。