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

pandas DataFrame列替换|符号为空格不生效该如何处理?

问题原因

pandas.Series.replace() 默认regex=False,执行的是单元格全值精确匹配,只有整个单元格内容完全等于|时才会替换。你的colB列没有值为单独|的单元格,因此替换不生效。

解决方法

方法1:使用str.replace()处理字符串子串(推荐)

Series.str.replace()专门用于处理列内字符串的子串匹配替换,两种可选写法:

  • 关闭正则匹配,直接匹配普通字符|
df['colB'] = df['colB'].str.replace('|', ' ', regex=False)
  • 开启正则匹配时,转义正则特殊字符|即可
df['colB'] = df['colB'].str.replace('\|', ' ', regex=True)

方法2:调整原replace方法参数

如果要继续使用Series级别的replace方法,开启正则匹配并转义|即可:

df['colB'] = df['colB'].replace('\|', ' ', regex=True)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.24 01:36:05