Считайте файл HDF5
hdf5read
будет удален в будущей версии. Используйте h5read
вместо этого.
данные = hdf5read (имя файла, datasetname)
attr = hdf5read (имя файла, attributename)
[данные, attr] = hdf5read (..., 'ReadAttributes', BOOL)
данные = hdf5read (hinfo)
[...] = hdf5read (..., 'V71Dimensions', BOOL)
data = hdf5read(filename,datasetname)
считывает все данные в наборе данных datasetname
, который сохранен в файле HDF5 filename
и возвращает его в переменном data
. Чтобы определить имена наборов данных в файле HDF5, используйте функцию hdf5info
.
Возвращаемое значение, data
, является многомерным массивом. hdf5read
сопоставляет типы данных HDF5 с нативными типами данных MATLAB®, когда это возможно. Если это не может представлять данные с помощью типов данных MATLAB, hdf5read
использует один из объектов типа данных HDF5. Например, если файл HDF5 содержит набор данных, составленный из перечислимого типа данных, hdf5read
использует объект hdf5.h5enum
представлять данные в MATLAB workspace. Объект hdf5.h5enum
имеет элементы данных, которые хранят перечисления (имена), их соответствующие значения и перечислимые данные.
hdf5read
выполняет лучше всего при чтении числовых наборов данных. Если необходимо считать строку, составной объект или наборы данных переменной длины, MathWorks строго рекомендует, чтобы вы использовали низкоуровневую HDF5 функцию интерфейса, H5D.read
чтение. Чтобы считать подмножество набора данных, необходимо использовать низкоуровневый интерфейс.
attr = hdf5read(filename,attributename)
читает все метаданные в атрибуте attributename
, сохраненный в файле HDF5 filename
, и возвращает его в переменном attr
. Чтобы определить имена атрибутов в файле HDF5, используйте функцию hdf5info
.
[data, attr] = hdf5read(...,'ReadAttributes',BOOL)
считывает все данные, а также всю связанную информацию атрибута, содержавшую в том наборе данных. По умолчанию BOOL
является ложным.
data = hdf5read(hinfo)
считывает все данные в наборе данных, заданном в структуре hinfo
, и возвращает его в переменном data
. Структура hinfo
извлечена от вывода, возвращенного hdf5info
, который задает файл HDF5 и определенный набор данных.
[...] = hdf5read(..., 'V71Dimensions', BOOL)
задает, изменить ли большинство наборов данных, считанных из файла. Если BOOL
верен, hdf5read
переставляет первые две размерности набора данных, как это сделало в предыдущих релизах (MATLAB 7.1 [R14SP3] и ранее). Это поведение было предназначено, чтобы составлять различие в том, как HDF5 и MATLAB выражают измерения массива. HDF5 описывает размерности набора данных в главном строкой порядке; MATLAB хранит данные в порядке развертывания по столбцам. Однако перестановка этих размерностей не может правильно отразить намерение данных и может делать недействительным метаданные. Когда BOOL
является ложным (значение по умолчанию), размерности данных правильно отражают данные, заказывая, как это написано в файле — каждая размерность в выходной переменной совпадает с той же размерностью в файле.
Используйте hdf5info
, чтобы получить информацию о файле HDF5 и затем использовать hdf5read
, чтобы считать набор данных, с помощью информационной структуры (hinfo
), возвращенный hdf5info
, чтобы задать набор данных.
hinfo = hdf5info('example.h5'); dset = hdf5read(hinfo.GroupHierarchy.Groups(2).Datasets(1));