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

百万行Pandas DataFrame单列多值替换高效实现方法咨询

高效实现方案

核心逻辑

优先预生成映射字典,再通过预编译的正则批量匹配替换,全程调用Pandas原生向量化操作,避免Python层循环,性能远高于拆分合并、逐行映射等方案。

代码实现

import pandas as pd
import re

# 1. 从DF2生成映射字典
map_dict = df2.set_index('Col_Name_X')['Col_Name_Y'].to_dict()

# 2. 预编译正则匹配模式,匹配所有需要替换的键
pattern = re.compile('|'.join(map_dict.keys()))

# 3. 批量替换(如果DF1是Series类型,直接调用对应Series变量的str.replace即可)
df1['Col_Name_1'] = df1['Col_Name_1'].str.replace(
    pattern, 
    lambda match: map_dict[match.group()], 
    regex=True
)

效果验证

用你提供的样例数据执行后,输出结果如下:

Col_Name_1
0  Paris, London
1         London
2   Paris, Mexico
3  London, Mexico

性能说明

该方案没有额外的内存开销,也不会产生中间冗余数据,处理100万行数据通常在30秒内即可完成,CPU和内存占用远低于你之前尝试的拆分合并方案。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.25 11:24:03