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
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
⋮
入力引数
既存の HDF5 ファイルのファイル名。string スカラーまたは文字ベクトルとして指定します。
ファイルの場所に応じて、filename
は次の形式のいずれかをとります。
場所 | 形式 | ||||||
---|---|---|---|---|---|---|---|
現在のフォルダー、または MATLAB® パス上のフォルダー | ファイルが現在のフォルダーまたは MATLAB パス上のフォルダーにある場合は、 例: | ||||||
その他のフォルダー | ファイルが現在のフォルダーまたは MATLAB パス上のフォルダーにない場合は、 例: 例: | ||||||
リモートの場所 | リモートの場所に保存されたファイルの場合、
リモートの場所に基づいて、
詳細については、リモート データの操作を参照してください。 例: |
ファイルが Family ドライバーを使用して複数の物理ファイルで構成されている場合は、書式指定子を使用して
filename
を指定します。それらの物理ファイルが現在のフォルダーにない場合は、絶対パスまたは相対パスを使用して指定します。たとえば、現在のフォルダーにあるfamily0.h5
とfamily1.h5
の 2 つのファイルを含む Family ドライバーを使用するには、filename
を"family%d.h5"
と指定します。ファイルが Multi ドライバーまたは Split ドライバーを使用して複数の物理ファイルで構成されている場合は、物理ファイルの名前の先頭にある接頭辞を
filename
として指定します。それらの物理ファイルが現在のフォルダーにない場合は、絶対パスまたは相対パスを使用して指定します。たとえば、現在のフォルダーにあるmulti-b.h5
、multi-g.h5
、multi-l.h5
、multi-o.h5
、multi-r.h5
、およびmulti-s.h5
の 6 つのファイルを含む Multi ドライバーを使用するには、filename
を"multi"
と指定します。
データセット名。HDF5 ファイル内の既存のデータセットの名前を含む string スカラーまたは文字ベクトルとして指定します。
HDF5 ファイルに書き込むデータ。数値データ型が対応する h5create
の呼び出しで指定されていた場合、data
は浮動小数点数または整数データを含む数値行列です。データは非スパースでなければならず、start
または count
を指定しない場合は HDF5 データセットと同じサイズでなければなりません。データセット内の次元が無制限である場合、書き込まれるデータはその次元に沿って任意のサイズにすることができます。
"string"
が対応する h5create
の呼び出しでデータ型として指定されていた場合、data
は MATLAB string 配列です。string 配列の次元は h5create
の呼び出しで指定された次元と一致しなければなりません。
開始位置。正の整数の数値ベクトルとして指定します。n
次元のデータセットについて、start
は 1 ベースのインデックスを含む、長さ n
のベクトルです。start
の要素はデータセットの次元に同じ順序で対応しています。ds
のいずれかの次元が無制限である場合、start
を指定しなければなりません。
start
を指定しない場合、関数 h5write
は各次元に沿って、最初のインデックスからデータセットへの書き込みを開始します。
書き込む要素数。正の整数の数値ベクトルとして指定します。n
次元のデータセットの場合、count
は各次元に沿ってデータセットに書き込む要素数を指定する長さ n
のベクトルです。count
の要素はデータセットの次元に同じ順序で対応しています。ds
のいずれかの次元が無制限である場合、count
を指定しなければなりません。
データセットの各次元に沿った要素間の間隔。整数の数値ベクトルとして指定します。n
次元のデータセットの場合、stride
は長さ n
のベクトルです。ベクトル stride
の要素は、データセットの次元に同じ順序で対応しています。値が 1
の場合、対応する次元の要素をスキップすることなく書き込み、値が 2
の場合、要素を 1 つおきに書き込み、以降も同様の繰り返しとなります。
stride
を指定しない場合、関数 h5write
は各次元に沿ってスキップすることなくデータを書き込みます。
制限
h5write
は、HDFS™ にリモートに保存されているファイルへの書き込みをサポートしません。
バージョン履歴
R2011a で導入Amazon S3、Windows Azure Blob Storage、HDFS などのリモートの場所にある HDF5 ファイルにデータを書き込むことができます。
Unicode 文字としてエンコードされた名前をもつ HDF5 ファイルにデータを書き込むことができます。
すべての Unicode コード ポイントを HDF5 ファイル内で表現できるようにするために、現在は UTF-8 が h5write
の既定の文字エンコードになっています。以前は、既定のエンコードは ASCII でした。
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Web サイトの選択
Web サイトを選択すると、翻訳されたコンテンツにアクセスし、地域のイベントやサービスを確認できます。現在の位置情報に基づき、次のサイトの選択を推奨します:
また、以下のリストから Web サイトを選択することもできます。
最適なサイトパフォーマンスの取得方法
中国のサイト (中国語または英語) を選択することで、最適なサイトパフォーマンスが得られます。その他の国の MathWorks のサイトは、お客様の地域からのアクセスが最適化されていません。
南北アメリカ
- América Latina (Español)
- Canada (English)
- United States (English)
ヨーロッパ
- 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)