在 pandas Python 中的 2 个数据帧之间的列中查找重复项

Looking for duplicates in columns between 2 dataframes in pandas Python

我如何才能编写一个函数来检测是否存在 pandas 数据帧的重复项。因此,如果我比较 firstsecond 之间的 index 列,则没有重复项。但是,如果我比较 firstthird 之间的 index 列,则会出现 1 的重复项。我想写一个函数,当有重复时 returns 为 True bool,没有重复时为 False

import pandas as pd

first = pd.DataFrame({'index': [1,4,5,6],
                      'vals':[3,4,5,7] })

second = pd.DataFrame({'index': [13,7,8,9],
                      'vals':[3,2,3,1] })

third = pd.DataFrame({'index': [1,11,2,12],
                      'vals':[6,7,51,2] })

预期输出:

first and second: False
first and third: True

使用sets谓词:

>>> any(set(first['index']).intersection(second['index']))
False  # because {}

>>> any(set(first['index']).intersection(third['index']))
True  # because {1}