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

Python pandas如何设置replace仅替换完全匹配的指定值而非所有匹配内容

问题原因

你之前的代码开启了regex=True参数,传入的"ct"会作为正则规则做模糊匹配,只要单元格内容包含ct子串就会触发替换,自然会误改其他包含该子串的内容。

解决方案

方案1(最简单,无需正则)

直接删除regex=True参数即可,pandas的replace方法默认就是*精确匹配整个单元格的值,只有单元格内容完全等于ct时才会执行替换,代码如下:

df_cleaned['cust_state'] = df_cleaned['cust_state'].replace("ct", "connecticut")

方案2(保留正则模式,适配复杂场景)

如果你需要保留正则匹配能力(比如后续要同时批量替换多个州的缩写),可以给正则规则添加首尾锚定符^和$,分别表示匹配字符串的开头和结尾,确保只有整个单元格内容完全是ct时才会匹配:

df_cleaned['cust_state'] = df_cleaned['cust_state'].replace(r"^ct$", "connecticut", regex=True)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.23 14:36:04