約 1000 個の hdf ファイルの名前を順番に含む list.dat ファイルがあります。これらを 1 つずつ順番に MATLAB に読み込み、それらに含まれるデータを行列に入力する必要があります。MATLAB に hdf ファイルを読み込ませるにはどうすればよいですか? MATLAB に 1 つのファイルを読み込ませる方法は知っていますが、リスト内のファイル名のみ (実際のファイルと同じディレクトリ内) の場合、変数で読み込む方法がわかりません。
これが私がこれまでに持っているものです:
% Read in sea ice concentrations
% AMSR-E data format: 'asi-s6250-20110101-v5.hdf';
% AMSR2 data format: 'asi-AMSR2-s6250-20120724-v5.hdf';
% SSMI data format: 'asi-SSMIS17-s6250-20111001-v5.hdf';
fname = 'list.dat';
data = double(hdfread(fname, 'ASI Ice Concentration'));
これは現在機能しません。というエラーがスローされます。
??? エラー使用 ==> hdfquickinfo>findInsideVgroup at 156 HDF ファイル '/home/AMSR_SeaIceData_Antarctic/list.dat' が無効であるか破損している可能性があります。
エラー ==> hdfquickinfo at 34 [found, hinfo] = findInsideVgroup ( filename, dataname );
エラー ==> hdfread>dataSetInfo at 363 hinfo = hdfquickinfo(filename,dataname);
エラー ==> hdfread at 210 [hinfo,subsets] = dataSetInfo(varargin{:});
fnamesのhdfファイルの実際のファイル名を入力すると、コードが機能します。
ありがとう。