我正在使用以下链接将字符串数组转换为 float 组 Convert String to float array
我收到的数据格式很奇怪
535. 535. 535. 534.68 534.68 534.68
虽然 numpy 能够将字符串数组转换为 float ,但当数据格式为 535 时,其他一些函数会失败。
有没有办法一次性将所有535.转换为535.00。
我使用以下代码进行转换
import numpy as np
strarray = ["535.","535.","534.68"]
floatarray = np.array(filter(None,strarray),dtype='|S10').astype(np.float)
print floatarray
最佳答案
将字符串转换为float128
。
试试这个:
import numpy as np
strarray = ["535.","535.","534.68"]
floatarray = np.array(filter(None,strarray),dtype='|S10').astype(np.float128)
print floatarray
输出:
[ 535.0 535.0 534.68]
或者使用推荐的longdouble
:
import numpy as np
strarray = ["535.","535.","534.68"]
floatarray = np.array(filter(None,strarray),dtype='|S10').astype(np.longdouble)
print floatarray
输出:
[ 535.0 535.0 534.68]
关于python - 从字符串数组转换时如何设置 numpy float 数组的精度?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13773840/