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

Pandas:如何将字符串(blank)原样读取而非转换为其他值

保留DataFrame中的"(blank)"字符串解决方案
  • 核心思路:彻底阻止pandas将"(blank)"识别为缺失值,仅将你需要的内容(比如空字符串)标记为缺失值。

针对CSV文件读取

使用read_csv时,设置以下参数组合:

import pandas as pd

df = pd.read_csv(
    "你的文件路径.csv",
    keep_default_na=False,  # 禁用pandas默认的缺失值识别列表
    na_values=[''],  # 仅将空字符串视为缺失值
    skipinitialspace=False,  # 保留单元格首尾空格,避免误处理"(blank)"
    dtype=str  # 强制所有列以字符串类型读取,杜绝自动类型转换
)

针对Excel文件读取

使用read_excel时,参数逻辑一致:

df = pd.read_excel(
    "你的文件路径.xlsx",
    keep_default_na=False,
    na_values=[''],
    dtype=str
)

验证与补救

读取后可通过以下代码验证是否保留了"(blank)":

print(df["目标列名"].unique())

若仍出现缺失值,可手动将其转回字符串:

import numpy as np

df["目标列名"] = df["目标列名"].replace({pd.NA: "(blank)", np.nan: "(blank)"})

注意:确保你的na_values列表中绝对不包含"(blank)",这是之前方案失效的常见原因。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.25 03:57:39