我有2个数据框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等等。
如果能得到相同的帮助,真的很感激
谢谢
答案 0 :(得分:1)
首先,按字典顺序对两个数据帧列进行排序,
df1 = df1.reindex_axis(sorted(df.columns), axis=1)
df2 = df2.reindex_axis(sorted(df.columns), axis=1)
然后比较。
df1 == df2
您不需要迭代。 (这意味着更快)
答案 1 :(得分:0)
如果您不关心列中的列,只关心它们是否全部包含在每个数据帧中:
set(df1.columns) == set(df2.columns)