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

如何在Dataframe中检测任意字符串并将其统一替换为0

通用解决方案

分两种常用处理场景,你可以根据自身需求选择:

场景1:仅替换无法转为合法数值的字符串,保留可转成数字的字符串(适配你给出的示例数据需求)

Python Pandas 环境

核心逻辑是尝试将所有元素转为数值,转换失败的内容自动标记为空缺值后统一替换为0:

import pandas as pd

df = df.apply(pd.to_numeric, errors='coerce').fillna(0)

R 环境

library(dplyr)

df <- df %>%
  mutate(across(everything(), ~ as.numeric(as.character(.x)))) %>%
  replace(is.na(.), 0)

场景2:不管字符串内容是否为合法数字,直接将所有字符串类型的内容替换为0

Python Pandas 环境

df = df.applymap(lambda x: 0 if isinstance(x, str) else x)

R 环境

library(dplyr)

df <- df %>%
  mutate(across(everything(), ~ ifelse(is.character(.x), 0, .x)))

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.28 05:45:03