【发布时间】:2021-01-11 23:12:15
【问题描述】:
我有以下数据框,代表员工编号、他们所在的部门以及他们在公司中的角色代码,可以是“1”或“2”。在“部门名称”列上,您可以让员工担任其角色的部门(命名约定为“XX:部门名称”,其中 XX 是国家代码),或者在某些情况下,它显示为一组部门,由逗号“,”表示员工在这些部门中的角色。它看起来像这样:
Department Name Employee Number Role Code
0 AU:Dept1 1000 1
1 AU:Dept1, AU:Dept3 1000 2
2 AU:Dept7 1000 1
3 CZ:Dept3 1001 2
4 CZ:Dept4, CZ:Dept6, CZ:Dept7 1001 2
5 CZ:Dept4 1001 1
6 PL:Dept1 1002 2
7 PL:Dept2, PL:Dept1 1002 1
8 PL:Dept3 1002 2
9 SG:Dept1 1003 1
10 SG:Dept1 1003 2
11 SG:Dept2 1003 2
员工在每个唯一的部门名称中只能有角色 1 或角色 2,因此我需要创建一个代码来返回所有冲突的行,其中员工似乎在同一部门中同时拥有角色 1 和角色 2。那将是输出:
Department Name Employee Number Role Code
0 AU:Dept1 1000 1
1 AU:Dept1, AU:Dept3 1000 2
4 CZ:Dept4, CZ:Dept6, CZ:Dept7 1001 2
5 CZ:Dept4 1001 1
6 PL:Dept1 1002 2
7 PL:Dept2, PL:Dept1 1002 1
9 SG:Dept1 1003 1
10 SG:Dept1 1003 2
执行此过滤器的最佳方法是什么?
【问题讨论】:
-
你试过了吗?邮政编码。我们可以帮助您解决代码中的特定问题。
-
对不起,我正在度假,已经接受了答案,谢谢!
标签: python pandas lambda filter slice