假设我有两个pandas dataframe:
df_a = pd.DataFrame({ 0: ['a', 'b', 'c'], 1: [9, 8, 7], 2: [True, True, False] })
df_b = pd.DataFrame({ 0: [9, 8, 7], 1: [True, True, False], 2: ['a', 'b', 'c'] })
字符串
如果忽略列顺序,这两个应该相等,因为它们各自包含具有相同行顺序的相同3列。我见过的每一种解决方案都试图基于列名进行匹配,但这对我来说并不重要。
3条答案
按热度按时间bsxbgnwa1#
在你的情况下
字符串
8ehkhllq2#
如果我理解正确的话,这个问题归结为 Dataframe 是否具有相同的列,不管列的顺序如何,我们检查的是 Dataframe 的相等性,而不是单个值。所以解决办法是:
字符串
gkl3eglg3#
另一种可能的解决方案,基于
numpy
:字符串