matlab.io.hdf4.sd.writeData
パッケージ: matlab.io.hdf4.sd
データセットへの書き込み
構文
writeData(sdsID,data)
writeData(sdsID,start,data)
writeData(sdsID,start,stride,data)
説明
writeData(sdsID,data)
は、sdsID
によって指定されたデータセットにすべてのデータを書き込みます。
writeData(sdsID,start,data)
は、連続したハイパースラブをデータセットに書き込みます。start
は、0 ベースの開始インデックスを指定します。各次元に沿った値の数は、data
のサイズから推定されます。
writeData(sdsID,start,stride,data)
はグリッド データフィールドに、不連続なハイパースラブのデータを書き込みます。各次元に沿って書き込まれる要素の数は、data
のサイズまたはデータセットそのものから推定されます。
start
と stride
は、0 ベースのインデックスを使用します。
この関数は HDF ライブラリ C API の関数 SDreadchunk
に相当しますが、MATLAB® は FORTRAN スタイルの順序を使用するので、start
パラメーターと stride
パラメーターは、C ライブラリ API とは逆の順序になります。
例
2 次元データセットに書き込みます。
import matlab.io.hdf4.* sdID = sd.start('myfile.hdf','create'); sdsID = sd.create(sdID,'temperature','double',[10 20]); data = rand(10,20); sd.writeData(sdsID,[0 0],data); sd.endAccess(sdsID); sd.close(sdID);
2 次元で無制限のデータセットに書き込みます。
import matlab.io.hdf4.* sdID = sd.start('myfile.hdf','create'); sdsID = sd.create(sdID,'temperature','double',[10 0]); data = rand(10,20); sd.writeData(sdsID,[0 0],data); data = rand(10,30); sd.writeData(sdsID,[0 20],data); sd.endAccess(sdsID); sd.close(sdID);