получить среднее значение файла netcdf, используя xarray - PullRequest
4 голосов
/ 06 марта 2020

У меня есть xarray из файла netcdf, который выглядит следующим образом.

Dimensions:    (latitude: 721, longitude: 1440, time: 41)
Coordinates:
  * longitude  (longitude) float32 0.0 0.25 0.5 0.75 ... 359.25 359.5 359.75
  * latitude   (latitude) float32 90.0 89.75 89.5 89.25 ... -89.5 -89.75 -90.0
    expver     int32 1
  * time       (time) datetime64[ns] 1979-01-01 1980-01-01 ... 2019-01-01
Data variables:
    z          (time, latitude, longitude) float32 50517.914 ... 49769.473
Attributes:
    Conventions:  CF-1.6
    history:      2020-03-02 12:47:40 GMT by grib_to_netcdf-2.16.0: /opt/ecmw...

Я хочу получить среднее значение z по широте и долготе.

Я пытаюсь этот код:

df.mean(axis = 0)

Но некоторые координаты теряются. и возвращает мне что-то вроде этого.

Dimensions:  (latitude: 721, longitude: 1440)
Coordinates:
    expver   int32 1
Dimensions without coordinates: latitude, longitude
Data variables:
    z        (latitude, longitude) float32 49742.03 49742.03 ... 50306.242

Я что-то здесь не так делаю. Пожалуйста, помогите мне с этим.

1 Ответ

2 голосов
/ 08 марта 2020

Необходимо указать по размеру (dim) вместо axis.

Использовать df.mean(dim='longitude')

...