Использование циклов в xarray.concat для выбора разных временных шагов - PullRequest
0 голосов
/ 04 мая 2020

Я новичок в python и мне нужна помощь со структурой al oop. специально использовать структуру al oop для предотвращения длинной функциональной строки. Я создал набор данных с ежегодными сезонными данными о количестве осадков в Северной Европе. Меня интересуют только летние данные за 1950-2018

print (PrNEU)
    <xarray.DataArray 'rr' (time: 273, latitude: 201, longitude: 464)>

    Coordinates:
      * latitude   (latitude) float64 25.38 25.62 25.88 26.12 ... 74.88 75.12 75.38
      * longitude  (longitude) float64 -40.38 -40.12 -39.88 ... 74.88 75.12 75.38
      * time       (time) datetime64[ns] 1950-06-01 1950-09-01 ... 2018-06-01

NEW = xr.concat([PrNEU[0,:,:],PrNEU[4,:,:],PrNEU[8,:,:],dim='time')

Print (NEW)
    <xarray.DataArray 'rr' (time: 3, latitude: 88, longitude: 200)>

    Coordinates:
      * longitude  (longitude) float64 -9.875 -9.625 -9.375 ... 39.38 39.62 39.88
      * latitude   (latitude) float64 49.62 49.88 50.12 50.38 ... 70.88 71.12 71.38
      * time       (time) datetime64[ns] 1950-06-01 1951-06-01 1952-06-01

Я могу записать все временные шаги вручную, но там надо Более простые способы создания нового набора данных с использованием только ежегодных данных о лете за 1950 - 2018 гг.

. Любая помощь в организации oop будет полезной. Спасибо

1 Ответ

0 голосов
/ 04 мая 2020

Для этого достаточно использовать .sel:

# selecting summer (June) every year
mon = PrNEU.time.dt.month == 6

NEW = PrNEU.sel(time=mon)

Затем вы можете провести дальнейший анализ с годовыми летними данными NEW.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...