我有两个 Dataframe 。对于同一个产品ID,它们可以有多个值。比较它们的值的最佳方法是什么?我尝试过使用csv_diff库中的compare对它们进行比较,但它是基于唯一键的。但是,我的 Dataframe 没有唯一键,对于同一个product_name有多个条目。
diff = compare(
load_csv(open("df1.csv"), key="product_name"),
load_csv(open("df2.csv"), key="product_name")
)
Dataframe 如下所示:
df1:
product name value value2 value3 value4 value5 value6 value7 ...
0 1234PROD 1 2 3 4 5 6 7 ...
1 1234PROD 7 4 4 7 8 7 8 ...
2 1234PROD 8 7 4 7 8 7 8 ...
df2:
product name value value2 value3 value4 value5 value6 value7 ...
0 4567PROD 1 2 3 4 5 6 9 ...
1 8767PROD 7 4 4 7 8 7 8 ...
2 1234PROD 5 7 4 7 8 7 8 ...
3 1234PROD 8 7 4 7 8 7 8 ...
我希望获得其更改的摘要,类似于:
changes:
[{'key': '1234PROD',
'changes': {'value': [1, 5],
'value1': [2,7],
'value2': [3,4]
}]
1条答案
按热度按时间slmsl1lt1#
我不确定您的预期输出应该是什么,但您可以尝试以下操作:
结果是一个对象,其中每行都包含与产品名称对应的所有行。您可以按行搜索该结果: