Python 比较两个不同数据帧的列

Python 比较两个不同数据帧的列,python,pandas,ipython,Python,Pandas,Ipython,我有两个数据帧df1和df2,它们的列名相同,但顺序可能不同 我正在验证这两个数据帧是否相同 我想根据列名比较这些数据帧 df1: A B C ... 1 1 1 1 2 4 5 3 8 df2: A C B .... 1 1 1 1 4 2 5 8 3 我想比较df1.A和df2.A等等 如果我能得到同样的帮助,我将不胜感激 谢谢首先,按字典顺序对两个数据框列进行排序 df1 = df1.reindex_axis(sort

我有两个数据帧df1和df2,它们的列名相同,但顺序可能不同

我正在验证这两个数据帧是否相同

我想根据列名比较这些数据帧

df1:
A   B   C ...
1   1   1
1   2   4
5   3   8

df2:
A   C   B ....  
1   1   1
1   4   2
5   8   3
我想比较df1.A和df2.A等等

如果我能得到同样的帮助,我将不胜感激


谢谢

首先,按字典顺序对两个数据框列进行排序

df1 = df1.reindex_axis(sorted(df.columns), axis=1)
df2 = df2.reindex_axis(sorted(df.columns), axis=1)
然后比较

df1 == df2

您不需要迭代。(这意味着更快)

如果您不关心列的顺序,只关心它们是否都包含在每个数据帧中:

set(df1.columns)==set(df2.columns)