首页 > 解决方案 > 熊猫找呼叫中心经理所在区域

问题描述

我有一种情况需要确定客户关系经理是在处理区域客户还是全球客户。现在经理可以处理区域和全球呼叫,因此无论是否属实,都需要进行身份验证。数据格式如下:

Customer_Name       Customer_Region       Manager_Name          Manager_Region
A                   Middle East           MGR1                  Middle East
B                   Asia                  MGR1                  Middle East
C                   Eastern Europe        MGR1                  Middle East
D                   Middle East           MGR1                  Middle East
E                   Middle East           MGR2                  Middle East
F                   Middle East           MGR2                  Middle East
G                   Middle East           MGR3                  Eastern Europe
H                   Middle East           MGR3                  Eastern Europe

因此,如果经理能够在其所在区域之外接听电话,那么标志应该是全球其他区域。这是一个示例输出:

Manager_Name          Manager_Call_handling_Region
MGR1                  Global
MGR2                  Regional
MGR3                  Global

标签: python-3.xpandaspivotpandas-groupbyaggregation

解决方案


你可以这样做:

df = df.groupby(by=['Manager_Name'], as_index=False).agg(','.join)
df['equal'] = df['Customer_Region']==df['Manager_Region']
df['Manager_Call_handling_Region'] = df['equal'].apply(lambda x: 'Regional' if x==True else 'Global')
df.drop(columns=['Customer_Name', 'Customer_Region', 'Manager_Region', 'equal'], inplace=True)
print(df)

输出:

  Manager_Name Manager_Call_handling_Region
0         MGR1                       Global
1         MGR2                     Regional
2         MGR3                       Global

推荐阅读