このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。
h5write
HDF5 データセットへの書き込み
構文
説明
例
データセット全体への書き込み
DS1
という名前の 10 行 20 列のデータセットを作成します。
h5create("myfile.h5","/DS1",[10 20])
乱数の 10 行 20 列の配列をデータセットに書き込みます。DS1
の次元が固定されているため、それに書き込まれるデータ量はそのサイズと一致していなければなりません。
mydata = rand(10,20); h5write("myfile.h5","/DS1",mydata)
ファイルの内容を表示します。
h5disp("myfile.h5")
HDF5 myfile.h5 Group '/' Dataset 'DS1' Size: 10x20 MaxSize: 10x20 Datatype: H5T_IEEE_F64LE (double) ChunkSize: [] Filters: none FillValue: 0.000000
データセットのブロックへの書き込み
DS2
という名前の 10 行 20 列のデータセットを作成します。
h5create("myfile.h5","/DS2",[10 20])
5 行 7 列のデータのサブセットをデータセットの最後の 5 行 7 列のブロックに書き込みます。書き込んでいるデータのサイズと一致するように count
を [5 7]
と指定します。count
のセルをこの開始位置から移動させるとデータセットの最後の要素で終わるため、start
を [6 14]
と指定します。
mydata = rand(5,7); h5write("myfile.h5","/DS2",mydata,[6 14],[5 7])
無制限のデータセットへのデータの書き込み
無制限の次元をもつデータセットにデータを書き込みます。
2 番目の次元で無制限のデータセットを作成します。データセットの任意の次元を Inf
に設定するには ChunkSize
を指定しなければなりません。
h5create("myfile.h5","/g2/DS2",[20 Inf],"Chunksize",[5 5]);
3 行 3 列のデータのブロックを "/g2/DS2"
に書き込みます。開始位置 [3 2]
から始まり、ブロックの最後まで書き込みます。無制限であるため、データセットの 2 番目の次元に沿って任意のサイズのデータを書き込むことができます。
data = rand(3); start = [3 2]; count = [3 3]; h5write("myfile.h5","/g2/DS2",data,start,count);
データセットからすべてのデータを読み取ります。
h5read("myfile.h5","/g2/DS2")
ans = 20×4
0 0 0 0
0 0 0 0
0 0.8147 0.9134 0.2785
0 0.9058 0.6324 0.5469
0 0.1270 0.0975 0.9575
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
⋮
入力引数
filename
— ファイル名
string スカラー | 文字ベクトル
ファイル名。既存の HDF5 ファイルの名前を含む string スカラーまたは文字ベクトルとして指定します。
書き込み先の場所によって、filename
は次のいずれかの形式にできます。
場所 | 形式 | ||||||
---|---|---|---|---|---|---|---|
現在のフォルダー | 現在のフォルダーに書き込むには、ファイルの名前を 例: | ||||||
その他のフォルダー | 現在のフォルダーとは異なるフォルダーに書き込むには、絶対パス名または相対パス名を 例: 例: | ||||||
リモートの場所 | リモートの場所に書き込むには、
リモートの場所に基づいて、
詳細については、リモート データの操作を参照してください。 例: |
ds
— データセット名
string スカラー | 文字ベクトル
データセット名。HDF5 ファイル内の既存のデータセットの名前を含む string スカラーまたは文字ベクトルとして指定します。
data
— データ
数値行列 | MATLAB® string 配列
HDF5 ファイルに書き込むデータ。数値データ型が対応する h5create
の呼び出しで指定されていた場合、data
は浮動小数点数または整数データを含む数値行列です。データは非スパースでなければならず、start
または count
を指定しない場合は HDF5 データセットと同じサイズでなければなりません。データセット内の次元が無制限である場合、書き込まれるデータはその次元に沿って任意のサイズにすることができます。
"string"
が対応する h5create
の呼び出しでデータ型として指定されていた場合、data
は MATLAB string 配列です。string 配列の次元は h5create
の呼び出しで指定された次元と一致しなければなりません。
start
— 開始位置
1 のベクトル (既定値) | 数値ベクトル
開始位置。正の整数の数値ベクトルとして指定します。n
次元のデータセットについて、start
は 1 ベースのインデックスを含む、長さ n
のベクトルです。start
の要素はデータセットの次元に同じ順序で対応しています。ds
のいずれかの次元が無制限である場合、start
を指定しなければなりません。
start
を指定しない場合、関数 h5write
は各次元に沿って、最初のインデックスからデータセットへの書き込みを開始します。
count
— 要素数
Inf
のベクトル (既定値) | 数値ベクトル
書き込む要素数。正の整数の数値ベクトルとして指定します。n
次元のデータセットの場合、count
は各次元に沿ってデータセットに書き込む要素数を指定する長さ n
のベクトルです。count
の要素はデータセットの次元に同じ順序で対応しています。ds
のいずれかの次元が無制限である場合、count
を指定しなければなりません。
stride
— 要素間の間隔
1 のベクトル (既定値) | 数値ベクトル
データセットの各次元に沿った要素間の間隔。整数の数値ベクトルとして指定します。n
次元のデータセットの場合、stride
は長さ n
のベクトルです。ベクトル stride
の要素は、データセットの次元に同じ順序で対応しています。値が 1
の場合、対応する次元の要素をスキップすることなく書き込み、値が 2
の場合、要素を 1 つおきに書き込み、以降も同様の繰り返しとなります。
stride
を指定しない場合、関数 h5write
は各次元に沿ってスキップすることなくデータを書き込みます。
制限
h5write
は、HDFS™ にリモートに保存されているファイルへの書き込みをサポートしません。
バージョン履歴
R2011a で導入R2020b: リモートの場所にある HDF5 ファイルへのデータの書き込み
Amazon S3、Windows Azure Blob Storage、HDFS などのリモートの場所にある HDF5 ファイルにデータを書き込むことができます。
R2020b: Unicode の名前をもつ HDF5 ファイルへのデータの書き込み
Unicode 文字としてエンコードされた名前をもつ HDF5 ファイルにデータを書き込むことができます。
R2020a: UTF-8 文字エンコードが既定の設定
すべての Unicode コード ポイントを HDF5 ファイル内で表現できるようにするために、現在は UTF-8 が h5write
の既定の文字エンコードになっています。以前は、既定のエンコードは ASCII でした。
MATLAB コマンド
次の MATLAB コマンドに対応するリンクがクリックされました。
コマンドを MATLAB コマンド ウィンドウに入力して実行してください。Web ブラウザーは MATLAB コマンドをサポートしていません。
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)