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

Pandas多列字符串处理:如何移除「↑ 0」单元格中的0仅保留「↑」

Pandas替换单元格内容问题修复方案

原代码错误点

  • 正则规则完全不匹配目标格式:原正则r'^?(0)$'既没有匹配目标内容开头的↑ (箭头加空格),^?属于无效正则语法,同时匹配全字符串结尾的0会误删xda列中单独的0值,不符合需求。
  • replace参数使用错误:dict(string={pat: ''})是错误的参数写法,pandas针对DataFrame做全表正则替换不需要加string这个key。

修复后实现代码

import pandas as pd

# 正则仅匹配值完全为「↑ 0」的单元格,^匹配开头 $匹配结尾避免误改其他内容
pat = r'^↑ 0$'
df = pd.DataFrame ({'Data': ['↑ *', '*', '↑ **'],
                    'myda': ['↑ 0', '*', '↑ 0'],
                    'xda': ['0', '100', '0.05']})

# 匹配到的内容直接替换为「↑」
df = df.replace(pat, '↑', regex=True)

运行输出验证

Data myda   xda
0   ↑ *    ↑     0
1     *    *   100
2  ↑ **    ↑  0.05

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.05 10:57:03