Pandas从数据框中提取列,这些列不存在于另一个数据帧中

时间:2015-04-01 01:15:05

标签: python pandas

我有2个数据帧:

df_A

A    B    C    D
12   23   34   45
22   32   54   87

和,

df_B

B    C 
23   34
32   54

如何选择df_A中df_B中不存在的列,从而产生以下数据帧(您可以假设df_B是df_A的子集):

A    D
12   45
22   87

我试过了:

df_A[df_A.columns.values <> df_B.columns.values]

但会导致KeyError

1 个答案:

答案 0 :(得分:3)

>>> df_A.columns.difference(df_B.columns)
Index(['A', 'D'], dtype='object')

会给你列,你可以这样做:

>>> cols = df_A.columns.difference(df_B.columns)
>>> df_A[cols]
    A   D
0  12  45
1  22  87