我正在使用Numpy 1.11.1版本,需要处理一个二维数组
my_arr.shape = (25000, 25000)
所有的值都是整数,我需要一个独特的数组值列表。当使用
lst = np.unique(my_arr)
时,我得到了以下结果:Traceback (most recent call last):
File "<pyshell#38>", line 1, in <module>
palette = np.unique(arr)
File "c:\Python27\lib\site-packages\numpy\lib\arraysetops.py", line 176, in unique
ar = np.asanyarray(ar).flatten()
MemoryError
我的电脑只有8GB的内存,但我尝试另一台16GB内存的机器,结果是相同的。监控内存和CPU使用情况并没有显示问题与RAM或CPU有关。
原则上,我知道数组由哪些值组成,但如果输入发生变化怎么办...另外,如果我想将数组的值替换为另一个值(比如说所有的2都替换成0),它是否也需要大量的RAM?