如何从包含科学记数法的字符串创建一个 numpy 数组
Posted
技术标签:
【中文标题】如何从包含科学记数法的字符串创建一个 numpy 数组【英文标题】:How to create a numpy array from a string containing scientific notation 【发布时间】:2019-10-28 18:47:39 【问题描述】:我有一组我想从一个文本文件中处理的数据,其中每一行都是一个 numpy 数组。有些很容易使用 fromstring 方法转换为数组,但有些则在其中包含科学记数法条目。我将如何将它们转换为 np 数组?
我的数据看起来像(这必须是一个数组):
0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00
0.00000000e+00 0.00000000e+00 0.00000000e+00 0.00000000e+00
0.00000000e+00 8.02796109e-07 0.00000000e+00 0.00000000e+00
0.00000000e+00 0.00000000e+00 9.99999197e-01
【问题讨论】:
【参考方案1】:我愿意
np.array(x.split(), dtype=np.float)
x 是你的字符串
【讨论】:
【参考方案2】:你的意思是:
import numpy as np
nn = np.array(['0.00122300e+10', '43434'])
nn = nn.astype(float)
print (nn)
#array([12230000., 43434.])
【讨论】:
以上是关于如何从包含科学记数法的字符串创建一个 numpy 数组的主要内容,如果未能解决你的问题,请参考以下文章