【发布时间】:2019-09-27 14:38:22
【问题描述】:
我正在尝试堆叠一些相同大小的二维数组 我的代码如下所示:
import numpy as np
a = np.random.randn(30_140_100)
b = np.random.randn(30_140_100)
c = np.random.randn(30_140_100)
d = np.random.randn(30_140_100)
e = np.random.randn(30_140_100)
f = np.random.randn(30_140_100)
array = np.vstack((a,b,c)).reshape(3, 5490, 5490)
我正在使用一台旧计算机来执行此操作(32 位)。我听说可以分块处理数组并将结果存储在硬盘中。我不知道这是否是一个解决方案,也不知道 python 代码中的实际实现。
非常感谢!
最好的问候
【问题讨论】:
-
错误是什么?
-
-------------------------------------------------------------------------- MemoryError Traceback (most recent call last) <ipython-input-2-907f62d89df1> in <module> 7 f = np.random.randn(30_140_100) 8 ----> 9 array = np.vstack((a,b,c)).reshape(3, 5490, 5490) ~/anaconda3/lib/python3.7/site-packages/numpy/core/shape_base.py in vstack(tup) 232 233 """ --> 234 return _nx.concatenate([atleast_2d(_m) for _m in tup], 0) 235 236 def hstack(tup): MemoryError: