python - Pandas 比较两个数据框并查找重复元素
问题描述
我想比较 df 和 df_equal。df 包含几个单独的数据帧
import pandas as pd
df1 = pd.DataFrame([[ 'b', 'b', 'b' ]],
columns=['a', 'b', 'c'])
Output:
a b c
0 b b b
df2 = pd.DataFrame([[ 'x', 'x', 'x' ]],
columns=['a', 'b', 'c'])
Output:
a b c
0 x x x
df = pd.concat([df1, df2])
a b c
0 b b b
0 x x x
df_equal = pd.DataFrame([[ 'x', 'x', 'x' ]],
columns=['a', 'b', 'c'])
我如何检查 df 是否重复?
我试过.equals:
for row in df:
df.equals(exactly_equal)
我想要的输出:
False #first row in df
True #second row in df
解决方案
您可以只遍历行,例如比较 的每一行df
(df2
假设df2
只有一行):
for row in range(len(df)):
print((df.iloc[row, ].values == df2.values).all())
False
True
推荐阅读
- javascript - vuetify 简单表。将嵌套对象属性转换为列
- javascript - 在鼠标悬停时显示文本而不是图标 - 反应材料 ui 按钮
- angular - 错误类型错误:“_co.client 未定义”
- c# - 如何创建 EntityFrameworkCore 自定义数据提供者?
- java - 如何处理离子库的未来?
- delphi - TClientDataSet.ApplyUpdates(0) 之前是否需要执行 CheckBrowseMode/Post?
- java - Java 资源错误
- android - 如何从 URL 打开应用程序?
- python - 在 Python 中拆分数据
- c# - listview windows窗体控件中数据的水平视图