如何找到两个数据框行之间的差异?

杰弗里

我有两个数据框,它们在一个通用ID上合并在一起。我试图发现匹配ID的每一行中的值都不同时。

我合并了文件,以便获得下表。我想我可以用一系列if语句来解决这个问题,但是实际的数据文件具有数百个列属性,这些列属性似乎根本没有效率。我正在尝试确定是否有一种简单的方法来执行此操作。

x Loan_ID   Trade_Quantity_x    Principal_x Interest_x  Late_Fee_x  Trade_Quantity_y    Principal_y Interest_y  Late_Fee_y
0   1   10  30  0   0   10  30  0   0
1   2   10  0   0   5   10  0   0   0
2   3   10  0   50  0   10  0   0   0
3   4   10  0   0   0   10  0   0   0
4   5   10  100 10  0   10  100 10  0
5   6   9   0   0   0   9   0   0   0
6   7   10  0   0   0   10  0   0   0

预期输出应为:

2. Late_Fee_y
3. Interest_y
普雷莫德

我假设您要执行的操作是比较两个结构相同的数据帧,即具有相同的列列表和相同的行数(由special值标识)Loan_ID

目的是列出两个框架之间不同的所有“单元格”,单元格位置由Loan_ID和列名中的ID决定。

我是否可以建议先以不同的方式合并两个框架,以获取值列表,然后通过扫描融化的框架或应用过滤器来找到差异?

示例数据(以idas为例Loan_ID

x = {'id':[1,2],'A':[0,1],'B':[2,3]}
y = {'id':[1,2],'A':[0,2],'B':[2,4]}
df_x = pd.DataFrame(x)
df_y = pd.DataFrame(y)
print(df_x)
print(df_y)

融化了

df_xm = pd.melt(df_x, id_vars=['id'])
df_xm['source']='x'
df_ym = pd.melt(df_y, id_vars=['id'])
df_ym['source']='y'
print(df_xm)
print(df_ym)

假设两个帧都按ID进行了相应排序

for i in df_xm.index:
    if df_xm['value'][i] != df_ym['value'][i]:
        print(f"{df_xm['id'][i]},{df_xm['variable'][i]}")

第二种方法:

merged = df_xm.merge(df_ym, left_on= ['id','variable'], right_on=['id','variable'])
print(merged)
filter_diff = merged['value_x'] != merged['value_y']
print('differences:')
print(merged[ filter_diff ])

我确信可以提高效率,但这是我的一般想法,即如何使用常规框架/表和过滤器操作解决“两个表快照之间的差异”。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何找到在文本框中输入的两个数字之间的差异?

来自分类Dev

如何找到在文本框中输入的两个数字之间的差异?

来自分类Dev

报告 R 中两个数据框之间的差异

来自分类Dev

如何找到两个数字之间的绝对差异

来自分类Dev

如何找到两个数组之间的差异?

来自分类Dev

如何找到两个数组之间的差异?

来自分类Dev

如何找到JavaScript中两个数组之间的差异?

来自分类Dev

如何找到2个数据框之间的差异?

来自分类Dev

如何在熊猫数据框中找到两个时间戳之间的差异

来自分类Dev

如何获得两个数据帧之间的对称差异?

来自分类Dev

选择两个数据框之间的缺失行

来自分类Dev

如何找到两个数据框的补码

来自分类Dev

如何通过从另一个数据框获取索引来从两个数据框获取列之间的差异?

来自分类Dev

如何在多行和多列的不同数据框中找到两个值之间的差异?

来自分类Dev

在FSharp中找到两个数组之间的差异

来自分类Dev

找到两个数组之间的对称差异

来自分类Dev

两个数据框列中的值计数之间的熊猫累积差异总和

来自分类Dev

两个数据框列之间的百分比差异(仅限数字)

来自分类Dev

如何在PHP中找到两个数组之间的差异?

来自分类Dev

如何在angular.js中找到两个数字之间的差异?

来自分类Dev

如何在C中找到两个数组之间的差异?

来自分类Dev

如何比较R中两个数据框的行

来自分类Dev

添加两个数据框行?

来自分类Dev

比较基于两个数字列的两个数据框,并找到在彼此的数字阈值内匹配的行

来自分类Dev

比较两个数据帧之间的值差异

来自分类Dev

两个数据点之间的 Grafana 差异

来自分类Dev

如何比较熊猫中的两个数据框并显示差异?

来自分类Dev

如何获得两个数组对象之间的差异项?

来自分类Dev

如何找到对象的两个JavaScript数组之间的差异?

Related 相关文章

  1. 1

    如何找到在文本框中输入的两个数字之间的差异?

  2. 2

    如何找到在文本框中输入的两个数字之间的差异?

  3. 3

    报告 R 中两个数据框之间的差异

  4. 4

    如何找到两个数字之间的绝对差异

  5. 5

    如何找到两个数组之间的差异?

  6. 6

    如何找到两个数组之间的差异?

  7. 7

    如何找到JavaScript中两个数组之间的差异?

  8. 8

    如何找到2个数据框之间的差异?

  9. 9

    如何在熊猫数据框中找到两个时间戳之间的差异

  10. 10

    如何获得两个数据帧之间的对称差异?

  11. 11

    选择两个数据框之间的缺失行

  12. 12

    如何找到两个数据框的补码

  13. 13

    如何通过从另一个数据框获取索引来从两个数据框获取列之间的差异?

  14. 14

    如何在多行和多列的不同数据框中找到两个值之间的差异?

  15. 15

    在FSharp中找到两个数组之间的差异

  16. 16

    找到两个数组之间的对称差异

  17. 17

    两个数据框列中的值计数之间的熊猫累积差异总和

  18. 18

    两个数据框列之间的百分比差异(仅限数字)

  19. 19

    如何在PHP中找到两个数组之间的差异?

  20. 20

    如何在angular.js中找到两个数字之间的差异?

  21. 21

    如何在C中找到两个数组之间的差异?

  22. 22

    如何比较R中两个数据框的行

  23. 23

    添加两个数据框行?

  24. 24

    比较基于两个数字列的两个数据框,并找到在彼此的数字阈值内匹配的行

  25. 25

    比较两个数据帧之间的值差异

  26. 26

    两个数据点之间的 Grafana 差异

  27. 27

    如何比较熊猫中的两个数据框并显示差异?

  28. 28

    如何获得两个数组对象之间的差异项?

  29. 29

    如何找到对象的两个JavaScript数组之间的差异?

热门标签

归档