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.

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical | char

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

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

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

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

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

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

Введенный в R2011a