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

使用正则表达式修改DataFrame:整行替换需求及问题排查

解决Pandas整行替换问题

你的问题核心是当前代码只替换了字符串中的匹配子串,而非整行内容,解决思路有两种:

方法一:修改正则匹配整行

调整正则表达式,让它匹配包含目标模式的整个字符串,这样replace就会替换整行:

df.replace(to_replace=r'.*[Gg]eramny.*', value='Berlin', regex=True)

解释:.*表示匹配任意长度的任意字符,前后拼接后就能匹配包含[Gg]eramny的整行文本,替换后整行直接变为Berlin。

方法二:布尔索引直接赋值(更直观)

先筛选出包含目标模式的行,再直接赋值,逻辑更清晰:

# 替换成你的实际列名,比如'address'
df.loc[df['address'].str.contains(r'[Gg]eramny', regex=True), 'address'] = 'Berlin'

另外注意:你的正则写的是[Gg]eramny,但源字符串里是germany,可能是拼写失误,如果要匹配正确的德国拼写,把正则改成[Gg]ermany即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.19 06:10:30