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

如何将CSV中指数格式数值正确读取为NumPy数组

问题原因

NumPy原生支持解析带E+xxx/E-xxx标识的科学计数法浮点数,你的报错和数值格式无关,根源是分隔符参数设置错误:
你在代码中指定了delimiter=",",要求程序按逗号拆分每行的数值列,但你的数据文件两列之间是多个空格分隔、不存在逗号,因此loadtxt会把整行内容当成单个字符串尝试转成浮点数,最终触发转换失败的报错。

解决方案

NumPy内置的np.loadtxt完全可以直接读取该格式文件,不需要额外自定义转换函数,两种改法都可以:

  • 直接删除delimiter=","参数:np.loadtxt默认就会自动识别任意长度的空白(包括多个连续空格、制表符)作为列分隔符,完美适配你的文件格式。
    修正后的可运行代码如下:
    import numpy as np
    
    array = np.loadtxt(r"fft_in.XY")
    print(array)
    
  • 如果需要显式声明分隔符逻辑,可以设置delimiter=None,和默认的空白分隔逻辑完全一致,同样可以正确读取多列数据。

读取完成后可以通过print(array.dtype)验证,所有指数格式的数值都会被正确解析为浮点数类型,不存在格式兼容问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.28 12:31:01