【发布时间】:2023-03-10 14:51:01
【问题描述】:
我在我的项目中使用numpy.asarray 来处理数组,因为它与默认的 Python 列表相比效率更高。在分配数组时,我还应该注意内存利用率,因为我的程序可以接收千兆字节的大数据。在检查numpy.asarray 时,我发现除非另有说明,否则数据类型是从数组本身推断出来的。因此,我有以下数组:
np.asarray([list(map(int, list(x))) for x in X])
当我打印print X.dtype 时,我得到了int64。由于这里的数组X 总是包含二进制值,0 或1,所以我想使用dtype=np.int8 来减少分配空间时所需的内存。但我不确定这是否是个好主意!我应该坚持使用默认的int64 吗? int8 会丢失任何我想不到的数据精度吗?
谢谢。
【问题讨论】:
标签: python arrays python-2.7 numpy