NCO: мы можем удалить измерение, не изменяя атрибут координат? - PullRequest
0 голосов
/ 26 ноября 2018

У меня есть файл netcdf:

dimensions:
  y = 453 ;
  x = 453 ;
  plev = 1 ;
  time = UNLIMITED ; // (1460 currently)
variables:
  double plev(plev) ;
    plev:name = "plev" ;
    plev:standard_name = "air_pressure" ;
    plev:long_name = "pressure" ;
    plev:units = "Pa" ;
    plev:axis = "Z" ;
    plev:positive = "down" ;
  float va925(time, plev, y, x) ;
    va925:_FillValue = 1.e+20f ;
    va925:missing_value = 1.e+20f ;
    va925:coordinates = "lon lat plev" ;
    va925:grid_mapping = "Lambert_Conformal" ;

Я хотел бы удалить измерение plev, но сохранить переменную plev и не изменять атрибут координат va925.

Поэтому я хотел бы:

dimensions:
  y = 453 ;
  x = 453 ;
  time = UNLIMITED ; // (1460 currently)
variables:
  double plev;
    plev:name = "plev" ;
    plev:standard_name = "air_pressure" ;
    plev:long_name = "pressure" ;
    plev:units = "Pa" ;
    plev:axis = "Z" ;
    plev:positive = "down" ;
  float va925(time, y, x) ;
    va925:_FillValue = 1.e+20f ;
    va925:missing_value = 1.e+20f ;
    va925:coordinates = "lon lat plev" ;
    va925:grid_mapping = "Lambert_Conformal" ;

Я пробовал с: ncwa -a plev in.nc out.nc Но он изменяет координаты va925, такие как: va925: координаты = "lon lat";

Я могу изменитьэто снова с: ncatted -h -O -a координаты, va925, m, c, "lon lat plev" out.nc Но это означает, что я должен зацикливаться на имени переменной, который слишком длинный!

Заранее спасибо,

Лола

1 Ответ

0 голосов
/ 07 декабря 2018

Как вы обнаружили, ncwa автоматически удаляет усредненные измерения из атрибута coordinates.Там нет переключателя, чтобы отключить это.Чтобы включить эту функцию, потребовалось много работы, поэтому иронично, что некоторые пользователи хотят ее отключить :) Вы уже обнаружили и отвергли очевидный обходной путь с ncatted.Более длительный обходной путь - переименовать все атрибуты координат перед использованием ncwa, а затем переименовать, например,

ncrename -a .coordinates,impeachment in.nc
ncwa -a lon in.nc out.nc
ncrename -a .impeachment,coordinates out.nc
...