python - 从字符串数组转换时如何设置 numpy float 数组的精度?

标签 python numpy

我正在使用以下链接将字符串数组转换为 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/

相关文章:

python - 如何使包含 for 循环的函数成为非阻塞的?

python - 加速嵌套循环来操作嵌套列表的每个值

python - 我将图片转换为 GIF 但 turtle 的 bgpic() 仍然无法正常工作

python - 在 python 中实现一维卷积的最佳方法是什么?

python - "Error: setting an array element with a sequence"

python - 为什么元类 __getattribute__ 在这里调用?

用于括号精确匹配的 Python RegEx

python - 每个值的索引列表

python - 在 Numpy 中合并两个相同形状数组的最简洁方法

python - @ 用于 matmul/inner,什么用于外积?