Pythonのnpyファイルとmatファイルの保存と読み取り

  一般的に使用されているcsvファイルとExcelファイルに加えて、PYを介してnpyファイル形式とmatファイル形式でデータを保存することもできます。

記事ディレクトリ

1.npyファイル

  npyは、numpyに対応するファイル形式です。保存にはnp.save()メソッドが使用され、読み取りにはnp.load()メソッドが使用されます。

具体的な例は次のとおりです。

import numpy as np
a = np.mat('1, 2, 3;4, 5, 6')
print(a)
print(type(a))
print("=================================")
b = np.array([[1, 2, 3], [4, 5, 6]])
print(b)
print(type(b))

              ここに画像の説明を挿入


ファイルの保存:
示されているように、行列とnumpy配列の両方がnpyファイルタイプでの保存をサポートしています。

np.save('a.npy', a)
np.save('b.npy', b)

                    ここに画像の説明を挿入


ファイルを読む

data1 = np.load('a.npy')
data2 = np.load('b.npy')

print(data1)
print(type(data1))
print("=================================")
print(data2)
print(type(data2))

               ここに画像の説明を挿入

  図に示すように、npyデータは正常に読み取られ、すべてnumpy配列データ型です。


2.マットファイル

  マットファイルとしての保存はscipyライブラリのscipy.io.savemat()メソッドに依存しますが、読み取りにはscipy.io.loadmat()メソッドが必要です。
保存するときは、変数を渡すだけでなく、変数の型を辞書の形式で渡す必要があります。辞書は、numpyの配列と行列もサポートしています。
具体的な例は次のとおりです。

import numpy as np
from scipy import io
a = np.mat('1, 2, 3;4, 5, 6')
print(a)
print(type(a))
print("=================================")
b = np.array([[1, 2, 3], [4, 5, 6]])
print(b)
print(type(b))

io.savemat('a.mat', {
    
    'matrix': a})
io.savemat('b.mat', {
    
    'array': b})

               ここに画像の説明を挿入
                      ここに画像の説明を挿入


データの読み取り

data1 = io.loadmat('a.mat')
print(data1)
print(type(data1))
print("=================================")
data2 = io.loadmat('b.mat')
print(data2)
print(type(data2))

ここに画像の説明を挿入
図に示すように、データは正常に読み取られます。しかし、読み取った結果は辞書になります。さらにデータを読み取る必要がある場合は、キー名に従ってデータを取り出す必要があります。

print(data1['matrix'])
print(type(data1['matrix']))
print("=================================")
print(data2['array'])
print(type(data2['array']))

               ここに画像の説明を挿入
取得されたときのキーは保存されたときの変数タイプに関連しており、取得されたデータはすべてnumpy配列であり、マトリックスタイプはなくなりました。


おすすめ

転載: blog.csdn.net/weixin_48964486/article/details/124376710