Удалить одно из измерений времени из трехмерного массива данных в Python?

У меня есть DataArray следующим образом:

<xarray.DataArray 'tws' (time: 179, lat: 180, lon: 360)>
[11599200 values with dtype=float64]
Coordinates:
  * time     (time) datetime64[ns] 2002-04-18 ... 2019-11-15T17:00:01
  * lon      (lon) float32 -179.5 -178.5 -177.5 -176.5 ... 177.5 178.5 179.5
  * lat      (lat) float32 89.5 88.5 87.5 86.5 85.5 ... -86.5 -87.5 -88.5 -89.5

Мне нужно удалить одно из временных измерений (например, tws['time'][23] ), и в конце я ожидаю получить данные в форме (time: 178, lat: 180, lon: 360)

Я знаю, что мы можем использовать .sel и .slice, чтобы выбрать определенный диапазон данных следующим образом:

tws.time.sel(time=slice[(񟭒-11-15T17:00:01.000000000')])

Но в моем случае я хотел бы иметь все данные, кроме одного (или нескольких) определенных временных измерений.

Всего 1 ответ


Вы можете использовать метод .drop_sel :

tws.drop_sel(time=slice[(񟭒-11-15T17:00:01.000000000')])

Изменить: удалить time из tws.time


Есть идеи?

10000