2016-12-29 92 views
1

我有两个数据框:比较在列名不存在熊猫2个数据帧

DF1

Name Emp ID Total Salary  A  B  C  D  E 
0 Mike A001   25000 5000 15000 3000 4500 2000 

DF2(这里列名不能分配)

[5000, 15000, 3000, 2000] 

如何比较两个数据框并打印如下匹配的行:

结果:

A - 5000 B - 15000 C - 3000 E - 2000 
+0

'这里列名不能分配':为什么? – Peaceful

+0

因为df2的值来自一个numpy数组。数组值是从函数中填充的,因此我不知道将会出现什么值。 – cgmaster

回答

0

使用上df2

df1[['A', 'B', 'C', 'E']] == df2.values 

     A  B  C  E 
0 True True True True 
0

的numpy的阵列试试这个。

df2.columns=['A','B','C','E'] 
df1[(df1[df2.columns]==df2.values).columns]