【发布时间】:2016-12-23 08:14:52
【问题描述】:
我有一个包含 50,000 个元素的列表 A,每个元素都是一个形状数组 (102400)
我尝试实例化一个数组B。
B=numpy.array(A)
但这会引发异常 MemoryError。我知道内存和大小非常巨大?但是有没有办法在 numpy 中使用 ndarrays 来避免这种 MemoryError 呢?
【问题讨论】:
-
你有多少内存?
-
你打算用这个大数组做什么?即使您设法创建它,您也可能无法用它做任何有意义的事情。在计算过程中
numpy会创建临时缓冲区,并且可能会在内存中留下一份或多份副本。有些东西太大了。 -
这些元素真的是数组吗?如果是的话,dtype 是什么?或者他们也列出来了?你能用
A的子集制作数组吗? -
可以不创建
listA直接加载数据到B吗?