【发布时间】:2021-10-18 21:31:04
【问题描述】:
我有几个数据框,每个都有不同和相同的列名,具有相同和不同列名的列可能具有相同的值。我想在一个数据集中找到与其他数据集的列具有匹配值的列(可能具有相同或不同的列名)。有没有使用python的有效方法来做到这一点?
例如:
df1: ID count Name
0 1 A
1 2 B
2 3 C
df2: person_id count_number Name Value
0 1 A 11
2 3 C 22
3 4 D 33
df3: key Value
11 11
22 22
33 33
我试过'isin()':效率不高,'datacompy':不能用?因为我有不同的列名。
我的预期输出:匹配的列名。并且还可以更好地显示他们有多少匹配项。
例如:在本例中,我要查找 df1、df2 和 df3 的匹配列。我想要的输出是:他们的成对匹配:对于 df1 和 df2:ID&person_id; count&count_number,姓名;对于 df2 和 df3:值,等等。
【问题讨论】:
-
欢迎堆栈溢出。请edit 提出minimal reproducible example 的问题,包括您对给定输入的预期输出,以及根据您自己的研究到目前为止您尝试过的代码,以便我们了解如何帮助
标签: python pandas dataframe match