ncwrite

Запишите данные к файлу NetCDF

Синтаксис

ncwrite(filename,varname,vardata)
ncwrite(filename,varname,vardata,start)
ncwrite(filename,varname,vardata,start,stride)

Описание

пример

ncwrite(filename,varname,vardata) пишет текст или числовые данные в vardata к существующему переменному varname в файле NetCDF filename.

Функция ncwrite написала данные в vardata, запускающемся в начале переменной и, в случае необходимости, автоматически расширяет неограниченные размерности. Для получения дополнительной информации о неограниченных размерностях смотрите аргумент Dimensions функции nccreate.

пример

ncwrite(filename,varname,vardata,start) записывает данные к существующей переменной, начинающейся в местоположении, заданном start. Используйте этот синтаксис, чтобы добавить данные к существующей переменной или записать частичные данные.

пример

ncwrite(filename,varname,vardata,start,stride) записывает данные с интервалом между индексами каждой размерности, заданной stride.

Примеры

свернуть все

Создайте файл NetCDF, который содержит переменную, и затем запишите данные к той переменной.

Создайте новый файл myfile.nc, содержащий переменную под названием pi.

nccreate('myfile.nc','pi');

Запишите скалярные данные без размерностей к переменному pi.

ncwrite('myfile.nc','pi',3.1416);

Считайте и отобразите переменную из файла.

valPi = ncread('myfile.nc','pi')
valPi = 3.1416

Запишите данные к фрагменту переменной в файле NetCDF, запускающемся в заданном местоположении.

Создайте файл myncfile.nc с пустым 3-by-6 числовая переменная vmark. Чтобы отключить значение заливки по умолчанию для пропавших без вести или пустых переменных, установите значение аргумента в виде пар "имя-значение" FillValue disable.

nccreate('myncfile.nc','vmark',...
         'Dimensions', {'x',3,'y',6},...
         'FillValue','disable');     

Запишите 3-by-3 массив к переменной, и затем считайте и отобразите vmark из файла. Функция ncwrite записывает данные, начиная в начале переменной.

ncwrite('myncfile.nc','vmark',3*eye(3));
varData = ncread('myncfile.nc','vmark');
display(varData)
varData = 3×6

     3     0     0     0     0     0
     0     3     0     0     0     0
     0     0     3     0     0     0

Добавьте другой 3-by-3 массив к переменному vmark , запускающемуся в четвертом столбце первой строки. Затем, считайте и отобразите vmark из файла. Функция ncrwrite пишет массив, запускающийся в местоположении [1 4].

ncwrite('myncfile.nc','vmark',5*eye(3),[1 4]);
varData = ncread('myncfile.nc','vmark');
display(varData)
varData = 3×6

     3     0     0     5     0     0
     0     3     0     0     5     0
     0     0     3     0     0     5

Запишите данные с заданным интервалом между переменными индексами по каждому измерению.

Во-первых, создайте файл myncfile.nc с пустым 6-by-6 числовая переменная vmark. Чтобы отключить значение заливки по умолчанию для пропавших без вести или пустых переменных, установите значение аргумента в виде пар "имя-значение" FillValue disable.

nccreate('myncfile.nc','vmark',...
         'Dimensions', {'x',6,'y',6},...
         'FillValue','disable'); 

Затем, запишите 3-by-3 числовой массив к переменному vmark, запускающемуся в местоположении [1 1] с интервалом 2 между переменными индексами по каждому измерению. Считайте и отобразите vmark из файла.

ncwrite('myncfile.nc','vmark',3*eye(3),[1 1],[2 2]);
varData = ncread('myncfile.nc','vmark');
display(varData)
varData = 6×6

     3     0     0     0     0     0
     0     0     0     0     0     0
     0     0     3     0     0     0
     0     0     0     0     0     0
     0     0     0     0     3     0
     0     0     0     0     0     0

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

свернуть все

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

Если файл NetCDF или переменная не существуют, то используйте функцию nccreate, чтобы создать их сначала.

Типы данных: char | string

Имя переменной, заданное как вектор символа или строка, содержащая имя переменной в файле NetCDF.

Типы данных: char | string

Переменные данные, заданные как числовые данные или текст.

Примечание

Для значений переменных, содержащих текстовые данные, входной параметр vardata должен иметь только закодированные символы ASCII.

Если переменный varname будет существовать, то ncwrite ожидает, что тип данных vardata будет совпадать с типом данных переменной NetCDF.

Если переменный varname имеет, приписывает _FillValue, scale_factor или add_offset, то функция ncwrite ожидает, что данными будет типа данных double. Чтобы бросить vardata в тип данных NetCDF, функция ncwrite применяет эти соглашения атрибута в последовательности:

  1. Вычтите значение атрибута add_offset от vardata.

  2. Разделите vardata на значение атрибута scale_factor.

  3. Замените любой NaN в vardata со значением, содержавшимся в атрибуте _FillValue. Если этот атрибут не существует, то ncwrite использует значение заливки для этой переменной, как задано библиотекой NetCDF.

Типы данных: единственный | удваиваются | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | логический | char

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

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

Типы данных: double

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

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

Типы данных: double

Введенный в R2011a

Была ли эта тема полезной?