Python Pandas – 从多列中查找唯一值

要从多个列中查找唯一值,请使用unique()方法。假设您的 Pandas DataFrame 中有带有“EmpName”和“Zone”的员工记录。名称和区域可以重复,因为两个员工可以有相似的名字,而一个区域可以有多个员工。在这种情况下,如果您想要唯一的员工姓名,请使用unique()for DataFrame。

首先,导入所需的库。在这里,我们将 pd 设置为别名 -

import pandas as pd

首先,创建一个DataFrame。在这里,我们有两列 -

dataFrame = pd.DataFrame(
   {
      "EmpName": ['John', 'Ted', 'Jacob', 'Scarlett', 'Ami', 'Ted', 'Scarlett'],"Zone": ['North', 'South', 'South', 'East', 'West', 'East', 'North']
   }
)

从 DataFrame 列“EmpName”和“Zone”中获取唯一的员工姓名和区域 -

{pd.concat([dataFrame['EmpName'],dataFrame['Zone']]).unique()}

示例

以下是完整的代码 -

import pandas as pd

# Create DataFrame
dataFrame = pd.DataFrame(
   {
      "EmpName": ['John', 'Ted', 'Jacob', 'Scarlett', 'Ami', 'Ted', 'Scarlett'],"Zone": ['North', 'South', 'South', 'East', 'West', 'East', 'North']
   }
)

print("DataFrame ...\n",dataFrame)

# Fetch unique values from multiple columns
print(f"\nFetching unique Values from the two columns and concatenate them:\n \
{pd.concat([dataFrame['EmpName'],dataFrame['Zone']]).unique()}")
输出结果

这将产生以下输出 -

DataFrame ...
    EmpName   Zone
0      John  North
1       Ted  South
2     Jacob  South
3  Scarlett   East
4       Ami   West
5       Ted   East
6  Scarlett  North

Fetching unique Values from the two columns and concatenate them:
['John' 'Ted' 'Jacob' 'Scarlett' 'Ami' 'North' 'South' 'East' 'West']