【问题标题】:Compare columns of 2 different Data frames比较 2 个不同数据框的列
【发布时间】:2017-07-28 01:17:39
【问题描述】:

我有 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 等等。

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

谢谢

【问题讨论】:

    标签: python pandas ipython


    【解决方案1】:

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

    df1 = df1.reindex_axis(sorted(df.columns), axis=1)
    df2 = df2.reindex_axis(sorted(df.columns), axis=1)
    

    然后比较。

    df1 == df2
    

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

    【讨论】:

      【解决方案2】:

      如果您不关心列是否有序,而只关心查看它们是否都包含在每个数据框中:

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

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-07-20
        • 1970-01-01
        • 1970-01-01
        • 2022-01-13
        • 2022-06-30
        • 2020-02-10
        相关资源
        最近更新 更多