官方文檔:https://ww2.mathworks.cn/help/matlab/ref/h5create.html
順着官方文檔讀就行,不懂的敲一敲代碼試試就知道了;
1、用到的函數:
h5create(filename,datasetname,size,Name,value)
h5write(filename,datasetname,data,start,count,stride)
2、參數說明:filename:hdf5/h5文件的文件名,包含擴展名,如'LLD-logo.hdf5';
datasetname:數據集名字,就是在h5文件中創建的dataSet名字,如'data'、‘data_LL’
size: 表示數據集的大小,也就是數據的shape,如果你以後要寫入的數據的個數維度不確定,可以把個數維度設置爲INF;
data: 要寫入的數據,其大小的'size'應該與之前創建dataSet的size一致。
Name,value:表示名稱-值形式的鍵值對,有些參數是可選的,通過 ‘參數名’-‘值’ 的形式進行賦值,一般都有默認值
start、count表示寫入data的一個子集,start表示開始的索引值,指定要寫入的第一個元素,count指沿每個維度要寫入的元素數。
stride表示間距、步幅。start、count、stride構成了data的一個超切片。
比如我要寫入一個大小(size)爲[12,12,3,24]的數組到‘myfile.h5’文件中的‘ds’數據集:可以使用命令:
h5create('myfile.h5','/ds',[12,12,3,24])
如果不存在‘myfile.h5’文件則會自動創建一個;如果有則向已有文件中寫入;
這裏我們創建一個形狀爲[12,12,3,24],作爲寫入數據集的數據,實際情況都是根據你要寫入數據的形狀來定義size。
然後寫入一個與size相同的數組到ds數據集中:
h5write('myfile.h5','/ds',mats)
這樣就可以把一個數據寫入ds數據集中了。