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

如何通过ID匹配在Power Query中补全性别列的女性信息?

通过ID关联补全性别列的解决方案

方法1:VLOOKUP+IF快速匹配(适合新手)

假设:

  • 「已注册」表:ID列=A列,姓名列=B列
  • 「补充信息」表:ID列=A列,性别列=B列(当前全为Male)

在「补充信息」表的空白列(比如C2单元格)输入公式:

=IF(ISNUMBER(SEARCH("女",VLOOKUP(A2,已注册!A:B,2,FALSE))),"Female",B2)

按回车后下拉填充整列,再把C列的值粘贴为数值替换原B列即可。

  • 逻辑:先通过ID匹配「已注册」表的姓名,检查姓名是否含女性特征(这里以中文“女”为例,英文可替换为OR(SEARCH("Mary",...),SEARCH("Lisa",...))),符合则改为Female,否则保留原Male。

方法2:INDEX+MATCH组合(大表格更高效)

如果数据量较大,INDEX+MATCH比VLOOKUP更稳定,公式如下:

=IF(OR(ISNUMBER(SEARCH({"芳","婷","娜"},INDEX(已注册!B:B,MATCH(A2,已注册!A:A,0))))),"Female",B2)
  • 逻辑:用MATCH找到对应ID的行号,INDEX提取姓名,再通过OR+SEARCH匹配多个女性姓名关键词,灵活度更高。

方法3:Power Query批量处理(大数据量首选)

  1. 分别把「已注册」和「补充信息」表导入Power Query:点击「数据」→「获取数据」→「自表格/区域」
  2. 在「补充信息」的查询界面,点击「合并查询」→「合并查询作为新查询」,选择ID列作为匹配键,关联「已注册」表,连接类型选「仅匹配」
  3. 展开合并后的列,只保留「姓名」字段
  4. 添加自定义列,输入判断公式(根据你的姓名特征调整):
if Text.Contains([姓名], "女") or List.Contains({"Mary", "Lisa", "Anna"}, [姓名]) then "Female" else [性别]
  1. 删除原性别列,将自定义列重命名为「性别」,最后点击「关闭并上载」导出到Excel

注意事项

  • 确保两张表的ID格式完全一致(无空格、统一文本/数字格式),否则匹配会失败
  • 若存在中性姓名,建议先在「已注册」表手动添加性别列,再直接关联匹配该列,准确率更高

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.23 14:25:58