为了账号安全,请及时绑定邮箱和手机立即绑定

比较来自多个数据帧的单元格

比较来自多个数据帧的单元格

ITMISS 2021-05-11 13:14:16
我不确定如何利用熊猫来解决这个问题。我正在尝试将一个数据帧中的每个ID的值与其他数据帧进行比较。下面是一个示例。Data Frame A        Data Frame B        Data Frame C      ID    Val           ID    Val         ID      Val0     12345 10      0     12345 11      0   12345   111     23456 12      1     23456 12      1   23456   122     34567 13      2     34567 13      2   34567   133     45678 16                          3   56789   12假设存在三个数据帧(dfa,dfb和dfc),每个数据帧都有ID和值。ID 12345的值为10、11和11,因此将被忽略。对于所有三个数据帧,ID 23456的值均为12,因此将以某种方式对其进行标记。也许打印出ID 23456是相同的。向前移动,由于ID 34567具有相同的值,因此同样适用于ID 34567,但由于ID 45678在数据帧B或数据帧C中不存在,因此将被忽略。我已经想到了一些方法来执行此操作,但是它涉及字典和列表。我想看看是否有办法通过继续利用熊猫来更好地做到这一点。
查看完整描述

1 回答

?
喵喵时光机

TA贡献1846条经验 获得超7个赞

df = A.merge(B,left_on='ID',right_on='ID').merge(C,left_on='ID',right_on='ID').rename({'Val_x':'Val_A','Val_y':'Val_B','Val':'Val_C'})

df['flag']=0

df.loc[(df['Val_A']==df['Val_B']) & (df['Val_B']==df['Val_C']),'flag']=1

标志列是您想要的。


查看完整回答
反对 回复 2021-05-18
  • 1 回答
  • 0 关注
  • 146 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号