【发布时间】:2018-12-09 09:47:43
【问题描述】:
我在 pandas 数据框中有两列 A 和 B,其中的值重复了多次。对于 A 中的唯一值,B 也应该具有“另一个”唯一值。并且 A 的每个唯一值在 B 中都有一个对应的唯一值(参见下面两个列表形式的示例)。但是由于每列中的每个值都重复多次,所以我想检查两列之间是否存在任何一对一的关系。 pandas 中是否有任何内置功能可以检查?如果没有,是否有实现该任务的有效方法?
例子:
A = [1, 3, 3, 2, 1, 2, 1, 1]
B = [5, 12, 12, 10, 5, 10, 5, 5]
这里,对于 A 中的每个 1,B 中的对应值始终是 5,仅此而已。同样,对于 2-->10 和对于 3-->12。因此,A 中的每个数字在 B 中只有一个/唯一的对应数字(并且没有其他数字)。我称之为一对一的关系。现在我想检查熊猫数据框中的两列之间是否存在这种关系。
这个关系不满足的例子:
A = [1, 3, 3, 2, 1, 2, 1, 1]
B = [5, 12, 12, 10, 5, 10, 7, 5]
这里,A 中的 1 在 B 中没有唯一的对应值。它有两个对应值 - 5 和 7。因此,不满足关系。
【问题讨论】:
-
请提供样本数据。
-
向我们展示一个小样本数据框以及您期望从解决方案中获得的输出。
-
现已提供示例(实际上是解释性示例)。