h5create
HDF5 データセットの作成
説明
例
固定サイズのデータセットの作成
絶対パスが '/g1/g2/myDataset'
として指定されている固定サイズ 100×200×300 のデータセット 'myDataset'
を作成します。
h5create('myfile.h5','/g1/g2/myDataset',[100 200 300])
'myDataset'
にデータを書き込みます。'myDataset'
の次元が固定されているため、それに書き込まれるデータ量はそのサイズと一致していなければなりません。
mydata = ones(100,200,300); h5write('myfile.h5','/g1/g2/myDataset',mydata) h5disp('myfile.h5')
HDF5 myfile.h5 Group '/' Group '/g1' Group '/g1/g2' Dataset 'myDataset' Size: 100x200x300 MaxSize: 100x200x300 Datatype: H5T_IEEE_F64LE (double) ChunkSize: [] Filters: none FillValue: 0.000000
圧縮を使用したデータセットの作成
単精度の 1000 行 2000 列のデータセットを作成し、最高水準の圧縮を適用します。HDF5 圧縮を適用する場合は、チャンク ストレージを使用しなければなりません。
h5create('myfile.h5','/myDataset2',[1000 2000],'Datatype','single', ... 'ChunkSize',[50 80],'Deflate',9)
HDF5 ファイル全体の内容を表示します。
h5disp('myfile.h5')
HDF5 myfile.h5 Group '/' Dataset 'myDataset2' Size: 1000x2000 MaxSize: 1000x2000 Datatype: H5T_IEEE_F32LE (single) ChunkSize: 50x80 Filters: deflate(9) FillValue: 0.000000
次元の制限がないデータセットの作成
2 番目の次元で無制限の 2 次元データセット '
/myDataset3'
を作成します。データセットの任意の次元を Inf
に設定するには ChunkSize
を指定しなければなりません。
h5create('myfile.h5','/myDataset3',[200 Inf],'ChunkSize',[20 20])
'
/myDataset3'
にデータを書き込みます。2 番目の次元が無制限であるため、2 番目の次元に沿って任意のサイズのデータを '
/myDataset3'
に書き込むことができます。
mydata = rand(200,500); h5write('myfile.h5','/myDataset3',mydata,[1 1],[200 500])
HDF5 ファイルの内容全体を表示します。
h5disp('myfile.h5')
HDF5 myfile.h5 Group '/' Dataset 'myDataset3' Size: 200x500 MaxSize: 200xInf Datatype: H5T_IEEE_F64LE (double) ChunkSize: 20x20 Filters: none FillValue: 0.000000
入力引数
filename
— ファイル名
文字ベクトル | string スカラー
ファイル名。HDF5 ファイル名を含む文字ベクトルまたは string スカラーとして指定します。
書き込み先の場所によって、filename
は次のいずれかの形式にできます。
場所 | 形式 | ||||||
---|---|---|---|---|---|---|---|
現在のフォルダー | 現在のフォルダーに書き込むには、ファイルの名前を 例: | ||||||
その他のフォルダー | 現在のフォルダーとは異なるフォルダーに書き込むには、絶対パス名または相対パス名を 例: 例: | ||||||
リモートの場所 | リモートの場所に書き込むには、
リモートの場所に基づいて、
詳細については、リモート データの操作を参照してください。 例: |
filename
がまだ存在していない場合、h5create
により作成されます。既存の HDF5 ファイル名と新しいデータセット名を指定する場合、
h5create
は新しいデータセットを既存の HDF5 ファイルに追加します。
ds
— データセット名
文字ベクトル | string スカラー
データセット名。作成されるデータセットの絶対パス名を含む文字ベクトルまたは string スカラーとして指定します。データセット名に中間グループを指定し、そのグループがまだ存在していない場合、h5create
によって作成されます。
sz
— データセットのサイズ
行ベクトル
データセットのサイズ。行ベクトルとして指定します。無制限の次元を指定するには、sz
の対応する要素を Inf
として指定します。この場合は、ChunkSize
も指定しなければなりません。
名前と値の引数
引数のオプションのペアを Name1=Value1,...,NameN=ValueN
として指定します。ここで Name
は引数名で、Value
は対応する値です。名前と値の引数は他の引数の後になければなりませんが、ペアの順序は重要ではありません。
R2021a より前では、コンマを使用してそれぞれの名前と値を区切り、Name
を引用符で囲みます。
例: h5create("myFile.h5","/dataset1",[1000 2000],ChunkSize=[50 80],CustomFilterID=307,CustomFilterParameters=6)
は、50 行 80 列のチャンク、登録された bzip2 フィルター (識別子 307
)、圧縮ブロックサイズ 6
を使用して、HDF5 ファイル myFile.h5
からデータセット dataset1
を作成します。
Datatype
— データ型
'double'
(既定値) | 'single'
| 'uint64'
| 'uint32'
| 'uint16'
| …
データセットのデータ型。次のいずれかの MATLAB® データ型として指定します。
'double'
'single'
'uint64'
'int64'
'uint32'
'int32'
'uint16'
'int16'
'uint8'
'int8'
'string'
ChunkSize
— チャンク サイズ
行ベクトル
チャンク サイズ。チャンクの次元を含む行ベクトルとして指定します。ChunkSize
の長さは sz
の長さと等しくなければならず、ChunkSize
の各エントリは sz
の対応する各エントリ以下でなければなりません。sz
のいずれかの要素が Inf
である場合、ChunkSize
を指定しなければなりません。
Deflate
— gzip
圧縮レベル
0 (既定値) | 数値
gzip
圧縮レベル。0 ~ 9 の数値として指定します。0 は最も低い圧縮レベル、9 は最も高い圧縮レベルです。
FillValue
— 欠損データの埋め込み値
0
(既定値) | 数値
数値データセットの欠損データの埋め込み値。数値として指定します。
Fletcher32
— 32 ビットの Fletcher チェックサム フィルター
false
または 0
(既定値) | true
または 1
32 ビットの Fletcher チェックサム フィルター。数値として、あるいは logical 1
(true
) または 0
(false
) として指定します。Fletcher チェックサム フィルターは、ファイル内の転送データにエラーがないことを検証するように設計されています。
Shuffle
— シャッフル フィルター
false
または 0
(既定値) | true
または 1
シャッフル フィルター。数値として、あるいは logical 1
(true
) または 0
(false
) として指定します。シャッフル フィルターはメモリに格納されているデータのバイト順を再配列することで圧縮率を改善するように設計されたアルゴリズムです。
TextEncoding
— テキスト エンコード
'UTF-8'
(既定値) | 'system'
テキスト エンコード。次の値のいずれかとして指定します。
'UTF-8'
— UTF-8 エンコードを使用して文字を表す。'system'
— システム エンコードを使用して文字をバイトとして表す (非推奨)。
CustomFilterID
— フィルター識別子
[]
(既定値) | 正の整数
The HDF Group によって割り当てられた登録済みフィルター プラグインのフィルター識別子。正の整数として指定します。登録済みフィルターのリストについては、The HDF Group の Web サイトの Filters ページを参照してください。
この引数の既定値は、データ セットで、動的に読み込まれたフィルターを圧縮に使用しないことを意味します。
データ型: double
CustomFilterParameters
— フィルター パラメーター
[]
(既定値) | 数値スカラー | 数値行ベクトル
サードパーティ フィルターのフィルター パラメーター。数値スカラーまたは行ベクトルとして指定します。この引数を指定せずに CustomFilterID
を指定した場合、関数 h5create
は空ベクトルを HDF5 ライブラリに渡し、フィルターは既定のパラメーターを使用します。
この名前と値の引数は、HDF5 ライブラリ内の関数 H5Pset_filter
の cd_values
引数に対応しています。
データ型: double
制限
h5create
は、HDFS™ にリモートに保存されるファイルの作成をサポートしません。
詳細
HDF5 内のチャンク ストレージ
チャンク ストレージとは、データセットを "チャンク" と呼ばれる小さいデータに分割することでメモリ内に格納する方法を指しています。チャンクは HDF5 ファイルに個別に読み取りおよび書き込むことができるため、データセットをチャンク化することで、データセットのサブセットを操作するときのパフォーマンスを向上させることができます。
バージョン履歴
R2011a で導入R2022a: 動的に読み込まれるフィルターを使用したデータセットの作成
名前と値の引数 CustomFilterID
と CustomFilterParameters
を使用して、動的に読み込まれるフィルターを使用した圧縮を有効にすることができます。
R2020b: リモートの場所での HDF5 ファイルの作成
Amazon S3、Windows Azure Blob Storage、HDFS などのリモートの場所に HDF5 ファイルを作成できます。
R2020b: Unicode の名前をもつ HDF5 ファイルの作成
Unicode 文字としてエンコードされた名前をもつ HDF5 ファイルを作成できます。
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)