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

Pandas读取CSV自动转字符串为日期,如何强制保留原字符串格式?

问题原因

pandas 读取CSV时默认会自动推断疑似日期格式的字段内容,部分版本中该推断逻辑优先级高于dtype参数的全局类型指定,会先将1/2这类内容转换为日期对象,再强制转为字符串时就变成了01-Feb这类格式化后的日期文本。

解决方法

方法1:全局禁用日期自动推断

读取时添加parse_dates=False参数,完全关闭pandas的自动日期识别逻辑:

df = pd.read_csv(
    "/Users/Name/Desktop/QM/data.csv", 
    encoding='latin-1',
    dtype=str,
    parse_dates=False
)

方法2:单独指定目标列的转换规则

如果其他字段需要正常自动推断类型,仅需要保留指定列的原始字符串格式,可以用converters参数单独给目标列设置字符串转换规则,该规则优先级高于自动类型推断:

# 请将代码中的target_column替换为你要处理的实际列名
df = pd.read_csv(
    "/Users/Name/Desktop/QM/data.csv", 
    encoding='latin-1',
    converters={"target_column": str}
)

注意事项

如果执行上述操作后还是得到日期格式的内容,请先用纯文本编辑器打开原始CSV文件,确认文件内存储的原始值是否已经是日期格式,部分从Excel导出的CSV会默认将这类分数格式的内容转为日期存储到CSV中,如果原始文件内已经是日期格式,需要先从导出环节调整,保证CSV原始内容就是1/2这类原始字符串。

内容的提问来源于stack exchange,提问作者Manolo Dominguez Becerra

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.05 04:45:00