pandas:比较pandas中的2个excel文件,返回其中一列中的值存在于另一列中的行

我有两个excel文件,都包含员工信息。 File1是195K行,File2小于100.我需要返回File1中存在id#的File1中的整个行。 我在PHP中做了这样的事情,但不能在Python /pandas中进行sorting。

我正在查看isin()方法来计算行的select。

df0 = pd.ExcelFile('File1.xlsx').parse('Sheet1') df1 = pd.ExcelFile('Fil2.xlsx').parse('Sheet1') print df0[df1['staffid'].isin(df0['staffid'])] 

结果是“IndexingError:Unalignable boolean Series key provided provided”

pandas是这个的正确工具,还是我应该看看openpyxl或其他?

你的列顺序是错误的,应该是:

 df0[df0['staffid'].isin(df1['staffid'])] 

错误是因为df1长度和df0不一样

你想在df1finddf0中的staffid值,而不是相反