繁体   English   中英

如何比较两个数据框并过滤不同的数据?

[英]How to compare two dataframes and filter the different data?

目前两个数据帧必须相同,但大小不同。 如何比较两个数据帧,以使用 pandas 找到不同的数据?

我无法使用df_control.eq()

import pandas as pd

df = pd.DataFrame({'col1': [1, 2], 'col2': [3, 4]})
df2 = pd.DataFrame({'col1': [14, 22], 'col2': [32, 22]})
df.eq(df2)

比较两个系列

Output:
col1    col2
0   False   False
1   False   True

我实际上想将两个数据帧与大量数据进行比较并过滤不同的行,以进行数据验证

预期的

col1 col2  Verify
1      3    False
2      4    False
14     32   False
22     22   True
result = pd.concat([df, df2])
ar = result.to_numpy()
result['Verify'] = (ar[:, [0]] == ar).all(axis=1)

结果:

   col1  col2  Verify
0     1     3   False
1     2     4   False
0    14    32   False
1    22    22    True

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM