【发布时间】:2019-02-12 18:58:34
【问题描述】:
数据框:df1
name age id salary
0 Smith 30 2 2000
1 Ron 24 3 30000
2 Mike 35 4 40000
3 Jack 21 5 5000
4 Roshan 20 6 60000
5 Steve 45 8 8000
6 Peter 32 1 1000
数据框:df2
name age salary id
0 Peter 28 10000 1
1 Smith 30 1500 2
2 Ron 24 7000 3
3 Mike 35 20000 4
4 Jack 21 5000 5
5 Cathy 20 9000 6
6 Steve 45 56000 8
df1 和 df2 要在 ID 上合并。请注意,df1 和 df2 中的 ID 不同,但 ID 顺序不同。需要创建如下所示的 df3-
name age id salary
0 Smith 30 2 2000|1500
1 Ron 24 3 30000|7000
2 Mike 35 4 40000 |20000
3 Jack 21 5 5000
4 Roshan|Cathy 20 6 60000|9000
5 Steve 45 8 8000|56000
6 Peter 32|28 1 1000|10000
我打算使用 to_excel 功能将上述输出放到 excel 表中。在此之前,我想在这个数据框中再添加一个额外的列,上面写着“匹配和不匹配”。逻辑是,如果显示最小一个差值结果的行中的任何一个应该不匹配,否则匹配。我正在模拟下面这样的输出-
id 年龄 姓名 工资 结果 0 2 30 史密斯 2000|1500 不匹配 1 3 24 Ron 30000|7000 不匹配 3 5 21 杰克 5000 比赛 4 6 20 Roshan|Cathy 60000|9000 不匹配 5 8 45 史蒂夫 8000|56000 不匹配 6 1 32|28 彼得 1000|10000 不匹配
我可以用什么来达到这样的结果
【问题讨论】: