python 2.7でcPickleを使用してリストに追加するように書き込みしようとしていますが、追加しません。python 2.7 cPickle appendリスト
コード:
import cPickle
import numpy
a = numpy.array([[1, 2],[3, 4]]);
output = open("1.pkl",'wb');
cPickle.dump(a,output);
a = numpy.array([[4, 5],[6, 7]]);
output = open("1.pkl",'ab');
cPickle.dump(a,output);
print(cPickle.load(open("1.pkl",'rb')));
出力:
:[[1 2]
[3 4]]
私は
コードの前にテキストファイルで配列を付加するために、このメソッドを使用していました10
a = numpy.array([[1, 2],[3, 4]]); text_file = open("1.txt", "w"); numpy.savetxt(text_file, a); text_file.close(); a = numpy.array([[4, 5],[6, 7]]); text_file = open("1.txt", "a"); numpy.savetxt(text_file, a); text_file.close(); text_file = open("1.txt", "r"); print(text_file.read());
出力:
1.000000000000000000e+00 2.000000000000000000e+00
3.000000000000000000e+00 4.000000000000000000e+00
4.000000000000000000e+00 5.000000000000000000e+00
6.000000000000000000e+00 7.000000000000000000e+00
私はPower SystemsのためのPythonシミュレーションI・セットアップのデータを書き込むために、これを使用していました。出力データは約7GBです。そして、書き込みプロセスは、シミュレーションを大幅に遅くしていました。私は、cPickleが書き込み処理を高速化できることを読んだ。
データ全体を読み取らずにcPickle出力ファイルに追加するにはどうすればよいですか?
また、書き込みを高速化するためにcPickleに代わるより良い方法がありますか?