python数组内存错误:无法分配具有形状的数组(250000,250000)
为了分析反演阵列研究,我需要建立一个形状为(250000,250000)的对角矩阵 不幸的是,这个数组似乎太大了(?),我收到了以下错误消息:python数组内存错误:无法分配具有形状的数组(250000,250000),python,arrays,Python,Arrays,为了分析反演阵列研究,我需要建立一个形状为(250000,250000)的对角矩阵 不幸的是,这个数组似乎太大了(?),我收到了以下错误消息: MemoryError: Unable to allocate array with shape (250000, 250000) and data type float32 如何解决此错误?哦,是的,它肯定太大了,因为250k*250k=625亿个元素,乘以4字节的32位数据类型=2500亿字节,这意味着仅用于容纳该阵列就需要250 GB(232.8
MemoryError: Unable to allocate array with shape (250000, 250000) and data type float32
如何解决此错误?哦,是的,它肯定太大了,因为250k*250k=625亿个元素,乘以4字节的32位数据类型=2500亿字节,这意味着仅用于容纳该阵列就需要250 GB(232.8 GiB)RAM。请考虑实现目标的另一种方法,除非您打算在一个巨大的AWS实例上运行它,该实例每月的成本为$3k+…如上所述,获得更多的ram和一个可以使用Python和NumPy处理非常大矩阵的系统:
MemoryError: Unable to allocate array with shape (250000, 250000) and data type float32