再次比较来自 DataFrame 的值
鉴于以下数据
data_df = pd.DataFrame({"Reference": ("A", "A", "A", "B", "C", "C", "D", "E"), "Other col": ("U", "U", "U--","V", "W", "W--", "X", "Y")}, index=[1, 2, 3, 4, 5, 6, 7, 8])
truth_df = pd.DataFrame({"Reference": ("A", "B", "C", "D", "E"), "Other col": ("U", "V", "W", "X", "Y")}, index=[1, 4, 5, 7, 8])
data_df 引用
值(value)
1
一种
你
2
一种
你
3
一种
用户体验
4
乙
伏
5
C
宽
6
C
万维网
7
D
X
8
乙
是
真相_df
引用
值(value)
1
一种
你
4
乙
伏
5
C
宽
7
D
X
8
乙
是
我需要检查并标记
data_df
中的值匹配 truth_df
并希望最终得到一个新的数据集,如:result_df
引用
值(value)
问题
1
一种
你
2
一种
你
3
一种
用户体验
错误的
4
乙
伏
5
C
宽
6
C
万维网
错误的
7
D
X
最佳答案
您可以使用参数 indicator=
合并数据帧设置为 True
.如果指标为 left_only
表示 Issue
中的“错误”值:
df_out = data_df.merge(
truth_df, on=["Reference", "Other col"], how="left", indicator=True
).rename(columns={"_merge": "Issues"})
df_out["Issues"] = np.where(df_out["Issues"] == "left_only", "Wrong", "")
print(df_out)
打印: Reference Other col Issues
0 A U
1 A U
2 A U-- Wrong
3 B V
4 C W
5 C W-- Wrong
6 D X
7 E Y
关于python - 将 DataFrame 中的多个值与另一个不同形状的值进行比较,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67425382/