如何检查pandas中的两列在逻辑上是否相同?

wmtdaxz3  于 2021-09-29  发布在  Java
关注(0)|答案(1)|浏览(325)

假设我有一个 Dataframe ,如下所示:
柱体1柱体2卡车3平面2卡车
你可以清楚地看到 column_1 逻辑上描述的是与 column_2 . 但我的数据集非常庞大,我无法通过目视检查来理解这两列之间的关系。如何检查两列(如示例所示)在逻辑上是否相同?

gkl3eglg

gkl3eglg1#

使用 factorize 并通过以下方式比较两个输出数组: all 如果所有值均为 True s:

print (pd.factorize(df['column_1'])[0] == pd.factorize(df['column_2'])[0]).all()
True

Map的另一个想法:

d = df.set_index('column_1')['column_2'].to_dict()
print (df['column_1'].map(d).eq(df['column_2']).all())

相关问题