Я знаю, что вы ищете ответ на языке Python, но это хлеб с маслом CDO (операторы климатических данных), который позволяет вам выполнять подобные вычисления в одной или двух командах из окна терминала.
Например, чтобы получить среднегодовые значения ваших промежуточных данных Era, вы можете сделать
cdo yearmean interim_t2m_19792017.nc erai_yearmean.nc
, а затем для расчета годовой аномалии вам нужно сделать среднее долгосрочное значение и вычесть его
cdo timmean interim_t2m_19792017.nc erai_timemean.nc
cdo sub erai_yearmean.nc erai_timemean.nc yearanom.nc
Вы можете объединить все вышеперечисленные 3 команды, используя "piping", но я здесь их отдельно, так как легче увидеть, что происходит.
Вы можете получить среднемесячный сезонный цикл с помощью:
cdo ymonmean interim_t2m_19792017.nc erai_ymonmean.nc
это дает вам файл со средним значением всех января, февраля и т. Д. (12 временных срезов).И затем вы можете рассчитать месячную аномалию, каждая по отношению к своему собственному среднемесячному значению с помощью
cdo monmean interim_t2m_19792017.nc erai_monmean.nc
cdo sub erai_monmean.nc erai_ymonmean.nc erai_monanom.nc
. Также существуют функции для сезонных средних.
Для получения более подробной информации см. Онлайн-документацию: https://code.mpimet.mpg.de/projects/cdo/
Наконец, msi_gerva верна в комментарии, в вопросе о том, какие аномалии существуют, не ясно, как вы могли бытакже рассчитать месячные аномалии по отношению к среднегодовому или долгосрочному значению.Более того, вы просите о ежегодных аномалиях и говорите, что знаете, как это сделать только в течение одного года, но я не думаю, что это имеет смысл, поскольку аномалии будут равны нулю.Может быть полезно уточнить вопрос более точно.