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

如何用Pandas检查CSV的Country_code与Snowflake表Code的匹配并生成标记

实现CSV中Country_code与Snowflake表Code的匹配校验

假设你已经成功将CSV数据读取为csv_df,Snowflake表数据读取为snowflake_df,可以按以下步骤快速实现匹配校验:

步骤说明

  1. 提取有效Code集合:从Snowflake的DataFrame中提取所有唯一的Code值,存为集合(集合的查询效率远高于列表,数据量大时优势更明显)
  2. 添加匹配标记列:利用Pandas的isin()方法,判断CSV中每一行的Country_code是否存在于有效Code集合中,生成布尔值标记列

代码实现

# 提取Snowflake表中所有唯一的Code,转为集合
valid_codes = set(snowflake_df['Code'].unique())

# 给CSV数据新增匹配结果列
csv_df['Is_Matched'] = csv_df['Country_code'].isin(valid_codes)

结果示例

执行后你的csv_df会新增Is_Matched列,结果如下:

Country_codeCountryIs_Matched
U123_CAUSATrue
C123_TRCanadaTrue
I123_MUIndiaFalse
E123_EUEuropeFalse

额外处理建议

如果你的数据存在前后空格或者需要不区分大小写匹配,可以先做数据清洗:

# 处理前后空格
snowflake_df['Code'] = snowflake_df['Code'].str.strip()
csv_df['Country_code'] = csv_df['Country_code'].str.strip()

# 不区分大小写匹配(转成统一小写)
valid_codes = set(snowflake_df['Code'].str.lower())
csv_df['Is_Matched'] = csv_df['Country_code'].str.lower().isin(valid_codes)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.12 17:00:02