いくつかの計算で大きな2D配列を初期化する必要があります。私はコードを実行すると "メモリエラー"が表示されます。コードはここPythonで大きな2D配列を操作する
a=np.zeros((200000,200000)) ## I get memory error in this line
for i in range (0,len(rows)):
for j in range (0,len(rows)):
if pq[rows[i],cols[j]]>0:
a[rows[i],cols[j]]=1
else:
a[rows[i],cols[j]]=0
下に与えられるように、「行」および「colsの」が長さの1Dアレイは200000 PQの寸法は433 X 800
Iは64ビットのWindows 10を使用していますされていますインテル®Core™i7-4770S CPU @ 3.10GHz×8プロセッサー(16Gb RAM搭載)私はPython 2.7.12を使用しています。
この問題を解決するための助けに感謝します。私はPythonには新しく、事前に感謝します。
pyTablesまたはジェネレータを使用してこの問題を解決できますか?私はちょうどそれらをオンラインで読んだ。
大きなメモリスペースを割り当てることはできないのでしょうか? これを4つのより小さな配列に分割できますか? –
さらなる計算のための入力として配列が必要です。小さな配列に分割することはできません。 – user30