比较两个数据范围并显示不同的数据
我有两个数据范围,我想比较两个列的值并显示不同的值,例如:比较此表1
A | B | C | D |
---|---|---|---|
O1 | 2 | E1 | 2 |
E1 2 O1 | 3 | E1 | 1 |
O1 1 O1 | 2 | E1 2 E1 | 0 |
O1 | 5 E1 5 E2 2 | O1 | 2 |
O1 2 O1 | 2 | E2 | 3 |
O1 | 2 | E2 | 2 |
O1 | 5 | E2 | 1 |
O2 | 8 | E1 | 2 |
O2 | 8 | E1 | 0 |
O2 | 0 | E1 | 1 |
O2 | 2 | E1 | 9 |
E1 2 O2 | 4 O2 9 | E1 | 2 |
O2 E2 | 2 | E2 | 1 |
O2 | 9 | E2 9 E2 | 4 |
4 O2 4 O2 | O2 2 | E2 | E2 |
带有此表2
A | B | C C | D |
---|---|---|---|
O1 | 2 | E1 | 2 |
O1 | 2 | E2 | 3 |
O2 | 2 | E1 | 4 |
O2 | 9 | E2 | 4 |
我尝试过
cond= [table1.A == table2.A, table1.C == table2.C, table1.D == table2.D]
join = table1.join(table2,cond,"leftsemi")
,并且由于其中有很多数据,我不知道如何检查我所拥有的结果是否正确
i have two dataframes and i want to compare the values of two columns and display those who are different, for exemple: compare this Table 1
A | B | C | D |
---|---|---|---|
O1 | 2 | E1 | 2 |
O1 | 3 | E1 | 1 |
O1 | 2 | E1 | 0 |
O1 | 5 | E2 | 2 |
O1 | 2 | E2 | 3 |
O1 | 2 | E2 | 2 |
O1 | 5 | E2 | 1 |
O2 | 8 | E1 | 2 |
O2 | 8 | E1 | 0 |
O2 | 0 | E1 | 1 |
O2 | 2 | E1 | 4 |
O2 | 9 | E1 | 2 |
O2 | 2 | E2 | 1 |
O2 | 9 | E2 | 4 |
O2 | 2 | E2 | 2 |
with this table 2
A | B | C | D |
---|---|---|---|
O1 | 2 | E1 | 2 |
O1 | 2 | E2 | 3 |
O2 | 2 | E1 | 4 |
O2 | 9 | E2 | 4 |
i tried
cond= [table1.A == table2.A, table1.C == table2.C, table1.D == table2.D]
join = table1.join(table2,cond,"leftsemi")
and since i have a lot of data in it, i don't know how to check if the result i've got is correct
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
由于您的DataFrames具有相同的架构,因此您可以使用
减去
df1
df2
减去
获取<<<<<代码> df1 ,但不存在df2
Since your dataframes has the same schema, you can use
subtract
df1
df2
subtract
to get data that exists indf1
but does not exists indf2
从一个dataframe
check_list = list = list(df2.apply(tuple,axis = 1))
使用它与其他
df1 = df1 = df1 [〜df1.apply(tuple(tuple)(tuple) ,轴= 1).isin(check_list)]
Create a list of tuple from one dataframe
check_list = list(df2.apply(tuple, axis=1))
and use it to compare with other
df1 =df1[~df1.apply(tuple, axis=1).isin(check_list)]