You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Pandas DataFrame中标记两列映射不匹配的记录

Pandas 双列一一映射校验标记方案

实现思路

要判断A、B两列是否满足双向唯一映射,只要满足以下两个条件之一即不符合规则,标记为1:

  • 同一个A值对应了多个不同的B值
  • 同一个B值对应了多个不同的A值

实现代码

import pandas as pd

# 统计每个A对应的B的唯一值数量
a_map_cnt = df.groupby('column A')['Column B'].transform('nunique')
# 统计每个B对应的A的唯一值数量
b_map_cnt = df.groupby('Column B')['column A'].transform('nunique')

# 只要有一个统计值大于1就标记为1,否则为0
df['New Column'] = ((a_map_cnt > 1) | (b_map_cnt > 1)).astype(int)

效果验证

用你提供的示例数据测试,输出结果和参考完全一致:

column AColumn BNew Column
AtlantaGA0
AtlantaGA0
NewyorkNY1
NewyorkYN1
company1Com1
companyCom1
companyCom1

内容的提问来源于stack exchange,提问作者Daven1

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.06 01:27:01