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

如何检测dtype为object的数组中的空值并将其替换为"0000"?

解决方案

针对object类型列的空值替换需求,可直接使用pandas内置的填充、替换方法实现,不会影响列中原有单个数值、分号分隔数值组合的结构。

基础替换(仅处理NaN空值)

如果你的空值为pandas标准的NaN类型,直接用fillna方法即可:

import pandas as pd

# 仅替换Numbers列的NaN为"0000"
df['Numbers'] = df['Numbers'].fillna('0000')

全场景替换(覆盖NaN、空字符串、空白字符串)

如果你的数据表中存在肉眼看起来是空的单元格,但实际为空字符串''、仅含空格/制表符的字符串,可使用replace方法配合正则匹配覆盖所有空值场景:

import pandas as pd
import numpy as np

# 同时替换NaN、空字符串、全空白字符串为"0000"
df['Numbers'] = df['Numbers'].replace(
    [np.nan, '', r'^\s*$'],
    '0000',
    regex=True
)

结果验证

执行替换后可通过以下代码校验空值是否全部处理完成:

# 统计剩余NaN数量
print(f"剩余NaN数量:{df['Numbers'].isna().sum()}")
# 统计剩余空字符串数量
print(f"剩余空字符串数量:{(df['Numbers'] == '').sum()}")

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.15 09:36:05