Numpyファイルアクセス
7421 ワード
Numpyは、ディスク上のテキストデータまたはバイナリデータを読むことができます.
回転:http://blog.csdn.net/sherrylml/article/details/51494052
配列をバイナリ形式でディスクに保存します.
np.loadとnp.saveはディスク配列データを読み書きする2つの主要関数であり、デフォルトでは、配列は非圧縮の元のバイナリ形式で拡張子npyというファイルに保存されています. 1 , 4 5 , , 8 9, 10 11 1 , 4 5 , , 8 9, 10 11 注:Numpy専用のバイナリフォーマットを保存しておけば、notepad++などで開けて見ることはできません.このような方式は保存されたファイルの内容を見る必要がない場合に使用することを推奨します.
np.savez
複数の配列を一つのファイルに保存する場合は、numpy.savez関数を使用できます.savez関数の最初のパラメータはファイル名です.その後のパラメータは保存が必要な配列です.キーワードパラメータを使って配列の名前を付けてもいいです.キーワード以外のパラメータを伝える配列は自動的にarr gauと名付けられます.0,アルアル1,….savez関数が出力するのは圧縮ファイル(拡張子はnpz)で、各ファイルはsave関数が保存するnpyファイルで、ファイル名は配列名に対応します.ロード関数はnpzファイルを自動的に識別し、辞書のようなオブジェクトを返します.配列名をキーワードとして配列の内容を取得できます. 1 , 4 5 , , 8 9, 10 11 15 , , , , 1 , 4 5 , , 8 9, 10 11 15 , , , , 解凍ソフトでfiles.npzファイルを開くと、その中に三つのファイルがあります.0.npy、arr_1.npy、C_array.npyは、それぞれ配列A,B,Cの内容が保存されています.
テキストファイルにアクセス
np.loadtxtとnp.savetxtは1次元と2次元の配列を読み書きできます. 各種のセパレータ、特定の列に対する変換器関数、スキップが必要な行数なども指定できます. 1 , 4 5 , , 8 1 , 4 5 , , 8
回転:http://blog.csdn.net/sherrylml/article/details/51494052
配列をバイナリ形式でディスクに保存します.
np.loadとnp.saveはディスク配列データを読み書きする2つの主要関数であり、デフォルトでは、配列は非圧縮の元のバイナリ形式で拡張子npyというファイルに保存されています.
>>> import numpy as np
A = np.arange(15).reshape(3,5)
>>> A
array([[ 0, 1, 2, 3, 4],
[ 5, 6, 7, 8, 9],
[10, 11, 12, 13, 14]])
>>> np.save("A.npy",A) # .npy, 。
>>> B=np.load("A.npy")
>>> B
array([[ 0, 1, 2, 3, 4],
[ 5, 6, 7, 8, 9],
[10, 11, 12, 13, 14]])
np.savez
複数の配列を一つのファイルに保存する場合は、numpy.savez関数を使用できます.savez関数の最初のパラメータはファイル名です.その後のパラメータは保存が必要な配列です.キーワードパラメータを使って配列の名前を付けてもいいです.キーワード以外のパラメータを伝える配列は自動的にarr gauと名付けられます.0,アルアル1,….savez関数が出力するのは圧縮ファイル(拡張子はnpz)で、各ファイルはsave関数が保存するnpyファイルで、ファイル名は配列名に対応します.ロード関数はnpzファイルを自動的に識別し、辞書のようなオブジェクトを返します.配列名をキーワードとして配列の内容を取得できます.
>>> C=np.array([1,0,1,0])
>>> np.savez("files.npz",A,B,C_array=C)
>>> D=np.load("files.npz")
>>> D['arr_0']
array([[ 0, 1, 2, 3, 4],
[ 5, 6, 7, 8, 9],
[10, 11, 12, 13, 14]])
>>> D['arr_1']
array([[ 0, 1, 2, 3, 4],
[ 5, 6, 7, 8, 9],
[10, 11, 12, 13, 14]])
>>> D['arr_2']
Traceback (most recent call last):
File "", line 1, in <module>
File "D:\Python3\lib\site-packages
umpy\lib
pyio.py", line 255, in __getitem__
raise KeyError("%s is not a file in the archive" % key)
KeyError: 'arr_2 is not a file in the archive'
>>> D['C_array']
array([1, 0, 1, 0])
テキストファイルにアクセス
np.loadtxtとnp.savetxtは1次元と2次元の配列を読み書きできます. 各種のセパレータ、特定の列に対する変換器関数、スキップが必要な行数なども指定できます.
np.loadtxt(FILENAME, dtype=int, delimiter=' ')
np.savetxt("a.txt", a, fmt="%d", delimiter=",")
例:>>> a=np.arange(0,10).reshape(2,-1)
>>> a
array([[0, 1, 2, 3, 4],
[5, 6, 7, 8, 9]])
>>> np.savetxt("a.txt",a) # '%.18e' ,
>>> np.loadtxt("a.txt")
array([[ 0., 1., 2., 3., 4.],
[ 5., 6., 7., 8., 9.]])
>>> a=np.arange(0,10,0.5).reshape(4,-1)
>>> a
array([[ 0. , 0.5, 1. , 1.5, 2. ],
[ 2.5, 3. , 3.5, 4. , 4.5],
[ 5. , 5.5, 6. , 6.5, 7. ],
[ 7.5, 8. , 8.5, 9. , 9.5]])
>>> np.savetxt("a.txt",a,fmt="%d",delimiter=",")# ,
>>> np.loadtxt("a.txt",delimiter=",")#load
array([[ 0., 0., 1., 1., 2.],
[ 2., 3., 3., 4., 4.],
[ 5., 5., 6., 6., 7.],
[ 7., 8., 8., 9., 9.]])