You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用Pandas判定呼叫中心经理的服务区域(全球/区域型)

解决方案:CRM经理服务区域分类

需求背景

我们需要根据经理的服务客户区域,判断其是区域型(Regional)还是全球型(Global),判定规则非常明确:

  • 若经理处理过自身区域以外的客户 → 标记为 Global
  • 若经理仅处理自身区域内的客户 → 标记为 Regional

输入数据示例

Customer_NameCustomer_RegionManager_NameManager_Region
AMiddle EastMGR1Middle East
BAsiaMGR1Middle East
CEastern EuropeMGR1Middle East
DMiddle EastMGR1Middle East
EMiddle EastMGR2Middle East
FMiddle EastMGR2Middle East
GMiddle EastMGR3Eastern Europe
HMiddle EastMGR3Eastern Europe

预期输出示例

Manager_NameManager_Call_handling_Region
MGR1Global
MGR2Regional
MGR3Global

实现方案

方案1:Python Pandas 处理本地数据

如果你的数据是本地文件(比如CSV、Excel),用Pandas可以快速完成分类:

import pandas as pd

# 替换成你的数据加载方式,比如pd.read_csv("your_data.csv")
data = pd.DataFrame({
    'Customer_Name': ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H'],
    'Customer_Region': ['Middle East', 'Asia', 'Eastern Europe', 'Middle East', 'Middle East', 'Middle East', 'Middle East', 'Middle East'],
    'Manager_Name': ['MGR1', 'MGR1', 'MGR1', 'MGR1', 'MGR2', 'MGR2', 'MGR3', 'MGR3'],
    'Manager_Region': ['Middle East', 'Middle East', 'Middle East', 'Middle East', 'Middle East', 'Middle East', 'Eastern Europe', 'Eastern Europe']
})

# 定义分类逻辑:检查每个经理是否有跨区域客户
def classify_manager(group):
    # 每个经理的区域是固定的,取第一条即可
    manager_region = group['Manager_Region'].iloc[0]
    # 只要有一个客户区域≠经理区域,就标记为Global
    has_foreign = any(group['Customer_Region'] != manager_region)
    return 'Global' if has_foreign else 'Regional'

# 分组计算并整理结果
result = data.groupby('Manager_Name').apply(classify_manager).reset_index(name='Manager_Call_handling_Region')

# 打印或导出结果
print(result)
# result.to_csv("manager_classification.csv", index=False)

方案2:SQL 查询数据库数据

如果数据存储在数据库中,直接用SQL就能完成分类,避免导出数据的麻烦:

-- 替换your_table_name为你的实际表名
WITH manager_check AS (
    SELECT 
        Manager_Name,
        Manager_Region,
        -- 标记该经理是否存在跨区域客户:1=有,0=无
        MAX(CASE WHEN Customer_Region != Manager_Region THEN 1 ELSE 0 END) AS has_foreign_customers
    FROM 
        your_table_name
    GROUP BY 
        Manager_Name, Manager_Region
)
SELECT 
    Manager_Name,
    CASE 
        WHEN has_foreign_customers = 1 THEN 'Global' 
        ELSE 'Regional' 
    END AS Manager_Call_handling_Region
FROM 
    manager_check;

内容的提问来源于stack exchange,提问作者Django0602

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.07 17:32:53