用python讀寫HDF5格式文件


用python讀寫HDF5格式文件

    用python讀寫HDF5格式文件
        HDF5介紹
        創建HDF5文件
        讀取HDF5文件
        HDF5的group

用python讀寫HDF5格式文件
HDF5介紹

       HDF(Hierarchical Data File)是美國國家高級計算應用中心(National Center for Supercomputing Application,NCSA)為了滿足各種領域研究需求而研制的一種能高效存儲和分發科學數據的新型數據格式 。
       HDF5適合存儲大量的二進制信息,並且提供並行IO加快讀寫速度。
       我們可以用python的h5py包來讀寫HDF5文件。
創建HDF5文件

    用h5py.File()函數和’w’ 選項創建一個data.h5文件
    如create_dataset() 函數在hdf5文件里面寫入dataset,該文件里面有兩個dataset分別是dataset_1和dataset_2。
    具體代碼如下。

import numpy as np
import h5py
data1 = np.random.random(size = (100,100))
data2 = np.random.random(size = (200,200))
hdfFile = h5py.File('data.h5', 'w')
hdfFile.create_dataset('dataset_1', data=data1)
hdfFile.create_dataset('dataset_2', data=data2)
hdfFile.close()

 
讀取HDF5文件

    用h5py.File()函數和’r’ 選項讀取一個data.h5文件
    用get() 方法得到某個dataset

hdfFile = h5py.File('data.h5', 'r')
dataset1 = hdfFile.get('dataset_1')
print(dataset1.shape)
hdfFile.close()

HDF5的group

       group在HDF5中的作用類似於linux的文件系統層次結構,通過這個層次結構可以合理的將不同的數據組織起來。

    我們用create_group() 函數創建一個組。
    用keys() 函數來得到HDF5文件里面的group
    用items() 函數可以查看某個group里面的dataset。

hdfFile = h5py.File('data.h5', 'w')
group1 = hdfFile.create_group('group1')
group1.create_dataset('dataset_1', data=data1)
group1.create_dataset('dataset_2', data=data2)
print(hdfFile.keys())

print(group1.items())

 




免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM