我有两个dataframes -一个是数据库,另一个是实际的列表。数据库:list of skills
| 技能|
| --------------|
| 技术1|
| 技能2|
| 技术3|
| 技术4|
列表:list of pairs
| 工人|工人技能|
| --------------|--------------|
| 员工1|技术1|
| 员工1|技能2|
| 员工1|技术3|
| 员工2|技能2|
| 员工2|技术3|
| 员工2|技术4|
| 员工3|技术1|
| 员工3|技术3|
| 员工3|技术4|
如何获得数据库中但不在列表中的工人技能对列表?:what I need
| 工人|他们没有的技能|
| --------------|--------------|
| 员工1|技术4|
| 员工2|技术1|
| 员工3|技能2|
我尝试了不同的合并和删除重复项的方法,但是,由于实际的工人列表很长,重复项存在于技能列表中。
2条答案
按热度按时间eulz3vhy1#
一种方法是创建一个包含所有worker和skills的dataframe(通过交叉连接它们),然后将其连接到worker df以查找哪些组合不存在;这是每个工人都不具备的技能
输出:
kpbpu0082#
我会使用
set
操作(difference
),然后explode
:输出: