は、私は一つの大きなファイルに多くのnumpyのファイルを置くためにこの質問Append multiple numpy files to one big numpy file in pythonに従って、結果は次のとおりです。メモリエラーのない大きなnumpyファイルに多数のnumpyファイルを入れるには?
import matplotlib.pyplot as plt
import numpy as np
import glob
import os, sys
fpath ="path_Of_my_final_Big_File"
npyfilespath ="path_of_my_numpy_files"
os.chdir(npyfilespath)
npfiles= glob.glob("*.npy")
npfiles.sort()
all_arrays = np.zeros((166601,8000))
for i,npfile in enumerate(npfiles):
all_arrays[i]=np.load(os.path.join(npyfilespath, npfile))
np.save(fpath, all_arrays)
data = np.load(fpath)
print data
print data.shape
私は何千ものファイルを持って、このコードを使用することによって、私は常にメモリエラーを持っているので、I私の結果ファイルを持つことはできません。 このエラーを解決するにはどうすればよいですか? 最後のnumpyファイルをファイルごとに読み書きし、追加する方法は?
いつメモリエラーが発生しますか?あなたの 'np.zeros'行が私のシステムにとって大きすぎるので、10G配列を作成します。配列が大きすぎて保存できない場合や、再度読み込む場合は、操作してプロットするには大きすぎます。なぜデータをチャンクに保存しないのですか?それは1つの大きな大きなファイル/配列になければなりませんか? – hpaulj
@hpaulj、メモリエラーが発生しました。この行の直後、all_arrays = np.zeros((166601,8000))。 –
もちろん、私は166601ファイルを持っていますが、それはたくさんあります。そして各ファイルについて私は8000ポイントを持っています –