
A.9
パフォーマンス改善のための豆知識
523
In [222]: mmap
Out[222]:
memmap([[ 0.7584, -0.6605, 0.8626, ..., 0.6046, -0.6212, 2.0542],
[-1.2113, -1.0375, 0.7093, ..., -1.4117, -0.1719, -0.8957],
[-0.1419, -0.3375, 0.4329, ..., 1.2914, -0.752 , -0.44 ],
...,
[ 0. , 0. , 0. , ..., 0. , 0. , 0. ],
[ 0. , 0. , 0. , ..., 0. , 0. , 0. ],
[ 0. , 0. , 0. , ..., 0. , 0. , 0. ]])
メモリマップは、先に説明したような構造化された
dtype
や階層構造を持った
dtype
も問題なく扱え
ます。
A.8.2
HDF5
やその他の配列保存方法
データの保存について、
PyTables
と
h5py
の
2
つの
Python
プロジェクトを紹介しておきましょう。こ
れらは、効率的で圧縮可能な
HDF5
形式(
HDF
はhierarchicaldataformat(階層型データ形式)の意味)
で配列データを保存するための、
NumPy
と親和性のあるインタフェースを提供しています。これらを
用いると、何百
GB
、さらには何
TB
もの
HDF5
形式のデータを安全に書き出せます。
Python
で
HDF5
を使う方法についてさら