Numpy 我该如何解决这个问题;“内存错误”;在努比?

Numpy 我该如何解决这个问题;“内存错误”;在努比?,numpy,Numpy,我使用numpy来制作一个使用np.zeros((x,y))的零矩阵 但我的笔记本上写着这是内存错误。 注意:我的x是92106,y是241071 我想这是因为这些大的值,我得到了一个错误。有什么方法可以解决这个错误吗?或者基本上可以处理这个错误?正如Alex在评论中更新的,您的RAM没有足够的内存来处理如此大的数组,Numpy不是最佳选择。您可以使用稀疏矩阵来创建这样的数组。有一种方法可以做到这一点 from scipy.sparse import dia_matrix import nump

我使用numpy来制作一个使用np.zeros((x,y))的零矩阵

但我的笔记本上写着这是内存错误。
注意:我的x是92106,y是241071


我想这是因为这些大的值,我得到了一个错误。有什么方法可以解决这个错误吗?或者基本上可以处理这个错误?

正如Alex在评论中更新的,您的RAM没有足够的内存来处理如此大的数组,Numpy不是最佳选择。您可以使用稀疏矩阵来创建这样的数组。有一种方法可以做到这一点

from scipy.sparse import dia_matrix
import numpy as np
d = dia_matrix((92106 , 241071), dtype=np.int8).toarray()
print(d.shape)  #(92106, 241071) which is a numpy array.

希望能有所帮助。

您的RAM和numpy版本是什么?@SaranrajNambusubramaniyan使用双启动系统。RAM:8GB和numpy版本1.13.3您需要至少1299013 GB的RAM来创建这么大的阵列(假设您使用的是64位数据类型)。如果您需要处理这么多数据,单独使用NumPy并不是正确的选择—最好使用分布式系统……显然,您无法将整个阵列保存在内存中,但有多种替代方案可以在不同的场景中使用。因此,请提供一些上下文-为什么需要创建这么大的数组?你将如何进一步处理它?我同意@AlexRiley的观点。我将为您更新一个替代解决方案。这确实有所帮助。非常感谢。