python下numpy数组的最大取值范围?

python下numpy数组的最大取值范围?

import numpy as np
import time

t1=time.time()
aa=np.ones((1,128),float)
bb=np.zeros((39999999,128),float)##bb=np.zeros((999999,128),dtype=np.float32),默认是:float64

for i in range(39999999):
  bb[i]=aa[0]


t2=time.time()

tall=t2-t1

print('timeelapse is:',tall)

本人在win7+python3.6的环境下,机器的物理内存为12G,cmd下测试,当设置为3999万时,显示如下:

python下numpy数组的最大取值范围?_第1张图片

MemoryError,有没有什么方法扩大这一数值?

在上述程序能够运行的情况下,赋值操作的时间大概是22分钟(配置:win7 64位+python3.6,Intel(R) Core(TM) i7-4790 CPU 3.6GHz,物理内存:12G)。


在处理大数据时,3999万条数据根本不够!

如果有新的方法,欢迎在留言区留言探讨,非常感谢。


你可能感兴趣的:(python,python,numpy,数组,取值范围,大数据)