Выберите данные по нетрадиционному измерению с помощью CDO или NCO

У меня есть большое количество файлов NetCDF, из которых я хотел бы извлечь небольшое количество переменных для одного места и объединить их в новый файл NetCDF. Размеры файлов:

dimensions:
    time = 18 ;
    level = 65 ;
    levelh = 66 ;
    domain = 36 ;

Я могу вычесть / объединить файлы для всех domains примерно такими:

cdo select,name=u,v file1.nc file2.nc out.nc

Но все другие операторы, похоже, связаны с выбором в пространстве (например, sellonlatbox) или времени (например, seltimestep), но я не могу найти способ выбрать только 1 domain из файлов NetCDF. Возможно ли это с CDO или NCO?


person Bart    schedule 26.09.2018    source источник
comment
Действительно интересный вопрос. Я предполагаю, что компакт-диски не предназначены для таких задач - обычные наборы климатических данных имеют географические пространственные измерения + размер записи, но я надеюсь, что вы получите ответ. Я включил nco в вопрос, возможно, это сообщество также может помочь.   -  person msi_gerva    schedule 26.09.2018
comment
Первоначально я пробовал это с Python (который был ужасно медленным), поэтому решение с NCO также очень приветствуется.   -  person Bart    schedule 26.09.2018


Ответы (1)


Не уверен, что полностью понимаю вопрос / намерение. Унтер-офицер одинаково относится ко всем измерениям. Если вам нужен домен 17, попробуйте

ncrcat -v u,v -d domain,17 file1.nc file2.nc out.nc

Если file1.nc и file2.nc не являются последовательными в координатах записи, попробуйте

ncecat -v u,v -d domain,17 file1.nc file2.nc out.nc

ДОБАВЛЕНО 20180929:

или если вам это не нравится, и файлы не имеют измерения записи, но являются последовательными по времени, тогда перед использованием ncrcat превратите временное измерение в координату записи для каждого файла с

ncks -O --mk_rec_dmn time file1.nc file1.nc
ncks -O --mk_rec_dmn time file2.nc file2.nc
...

и т.д. и действуйте, как указано выше. Это может быть лучший способ продвижения вперед с NCO.

person Charlie Zender    schedule 26.09.2018
comment
Спасибо, Чарли. Файлы являются последовательными во временном измерении, но этот dim не неограничен, поэтому ncrcat, похоже, испытывает трудности с распознаванием измерения concat (что CDO каким-то образом удается делать). NCO дает подсказки, как это исправить, но для этого потребуется изменить (очень) большое количество файлов NetCDF ... Можно ли указать ncrcat, какое измерение следует объединить? ncecat не работает, он добавляет измерение record ко всем переменным, кроме времени, поэтому я теряю всю информацию о времени, кроме времени из первого файла. - person Bart; 28.09.2018