Измеряйте еженедельное среднее значение нескольких файлов netCDF с помощью NCO или Python.

у меня есть ежедневные файлы netcdf с 2017 года (365 'name_file.nc'), и в моих ежедневных основах я использую некоторые операции с библиотекой NCO и Matlab.

Я делаю средние значения с помощью Matlab, но теперь я ищу, как это сделать с помощью NCO или Python. (На самом деле я иду параллельно, поэтому я в процессе миграции)

Основная задача прочитать 7 .nc файлов (неделя) и сделать новый .nc файл со средними значениями.

Некоторые идеи?

Спасибо!


person Enrique Pacheco    schedule 30.12.2017    source источник
comment
Множество идей; эти операции довольно просты с пакетами Python NetCDF4/xarray/Numpy... Но что вы пробовали до сих пор?   -  person Bart    schedule 31.12.2017


Ответы (2)


Для этого NCO использует ncra. ncra может обрабатывать индексы или даты... см. примеры, хотя это может быть так же просто, как эта однострочная строка:

ncra in[1-7].nc out.nc
person Charlie Zender    schedule 01.01.2018

Вы также можете рассматривать файлы как ансамбль и усреднять их с помощью CDO:

cdo ensmean in[1-7].nc out.nc

очевидно, вам нужно будет поместить это в цикл в bash, чтобы циклически проходить весь год. К сожалению, в CDO нет встроенного среднего значения за неделю (только для часов, дней, месяцев и сезонов), я думаю, потому что недели не укладываются точно в 365 дней, возможно... не уверен.

person Adrian Tompkins    schedule 01.01.2018