h5write

Запишите в набор данных HDF5

Синтаксис

h5write(filename,ds,data)
h5write(filename,ds,data,start,count)
h5write(filename,ds,data,start,count,stride)

Описание

h5write(filename,ds,data) записывает данные к набору данных в целом, ds, в заданном файле HDF5. Если набор данных фиксируется в размере, объем данных, который будет записан, должен совпадать с размером набора данных.

h5write(filename,ds,data,start,count) пишет подмножество данных к набору данных, начинающемуся в стартовом местоположении start, и продолжение для count элементы. В многомерном наборе данных, count задает расстояние в каждом направлении. h5write расширяет растяжимый набор данных по любым неограниченным измерениям, при необходимости.

h5write(filename,ds,data,start,count,stride) задает интервал между элементами, stride, по каждому измерению набора данных.

Примеры

свернуть все

Создайте 10 20 набор данных под названием DS1.

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

Создайте 10 20 набор данных под названием DS2.

h5create('myfile.h5','/DS2',[10 20])

Запишите 5 7 подмножество данных к последнему 5 7 блок набора данных. Задайте count как [5 7] чтобы совпадать с размером данных, вы пишете. Задайте start как [6 14], потому что перемещение count ячейки от этой начальной точки закончатся в последнем элементе набора данных.

mydata = rand(5,7);
h5write('myfile.h5','/DS2',mydata,[6 14],[5 7])

Запишите данные к набору данных, который имеет неограниченную размерность.

Создайте набор данных, который неограничен вдоль второго измерения. ChunkSize должен быть задан, чтобы установить любую размерность набора данных к Inf.

h5create('myfile.h5','/g2/DS2',[20 Inf],"Chunksize",[5 5]);

Запишите 3х3 блок данных в '/g2/DS2'. Начните в начальной точке [3 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
      ⋮

Входные параметры

свернуть все

Имя файла в виде вектора символов или строкового скаляра, содержащего имя существующего файла HDF5.

Имя набора данных в виде вектора символов или строкового скаляра, содержащего имя существующего набора данных в файле HDF5.

Данные, которые будут записаны в файл HDF5. Если числовой тип данных был задан в соответствующем вызове h5create, затем data числовая матрица, содержащая или целочисленные данные с плавающей точкой. Данные должны быть не разреженными, и должны быть одного размера с набором данных HDF5, если вы не задаете start или count. Если размерность в наборе данных неограниченна, то данные, которые будут записаны, могут быть любым размером по тому измерению.

Если 'string' был задан как тип данных в соответствующем вызове h5createданные массив строк MATLAB. Размерности массива строк должны совпадать с заданными в вызове h5create.

Стартовое местоположение в виде числового вектора положительных целых чисел. Для N-мерного набора данных, start вектор длины N содержащий индексы на основе 1. Элементы start соответствуйте, в порядке, к размерностям набора данных.

Если вы не задаете start, затем h5write функция начинает писать в набор данных от первого индекса по каждому измерению.

Число элементов, чтобы записать в виде числового вектора положительных целых чисел. Для N-мерного набора данных, count вектор длины N, задавая число элементов, чтобы записать в набор данных по каждому измерению. Элементы count соответствуйте, в порядке, к размерностям набора данных.

Разрядка между элементами по каждому измерению набора данных в виде числового вектора целых чисел. Для N-мерного набора данных, stride вектор длины N. Элементы stride вектор соответствует, в порядке, к размерностям набора данных. Значение 1 записи, не пропуская элементы в соответствующей размерности, тогда как, значение 2 пишет любой элемент и так далее.

Если вы не задаете шаг, то h5write функция записывает данные, не пропуская по каждому измерению.

Вопросы совместимости

развернуть все

Поведение изменяется в R2020a

Введенный в R2011a

Для просмотра документации необходимо авторизоваться на сайте