在合并上应用功能

Posted

技术标签:

【中文标题】在合并上应用功能【英文标题】:Applying function on merge 【发布时间】:2018-04-11 20:27:39 【问题描述】:

我有两个数据框。片段粘贴在下面

员工

项目

两个数据框都有共同的列“级别”和“技能”,我需要将员工数据框的“员工ID”列合并到项目数据框。但问题是我需要将那些 EmployeeID 添加到 CostToCompany 最低的项目中。我该怎么做?

【问题讨论】:

【参考方案1】:

您可以,drop_duplicates选择最低成本的一项

Employee=Employee.sort_values(['Level','skill','CostToCompany']).drop_duplicates(['Level','skill','Rating'],keep='first')

那么,

Project1=pd.merge(Project,Employee['Level','skill','Employee ID'].on='cols')

或者你可以使用你的结果做:

Project1.sort_values(['Level','skill','CostToCompany']).drop_duplicates(['Level','skill','Rating'],keep='first')

【讨论】:

我的项目数据框有 10 行。所以最终在合并时我应该有 10 行,但我得到了 20 行。同样的技能和级别集也重复使用不同的 EmployeeID Project1=pd.merge(Project,Employee['Level','skill','Rating'].on='cols',how='left'),请确保您删除重复的内容,就像我在第一行所做的那样 我认为我不应该在 drop_duplicates 上使用“评级”。然后它给了我 10 行 @Biswa 是的,你是对的,没有数据很难写代码,所以下次请不要显示图片~:-) 谢谢老兄。会注意到这一点。您的代码有效

以上是关于在合并上应用功能的主要内容,如果未能解决你的问题,请参考以下文章

如何在php GD中应用旋转功能后去除黑色背景?

git把一个分支上的某个提交合并到另一个分支

Github上如何合并多个Commit

实现对象合并功能

git合并丢失代码问题分析与解决(错误操作导致)

Git:无法将功能分支合并到当前分支