У меня есть набор файлов HDF5 со следующим заголовком:
netcdf control-A-2017-05-12-090000-g1 {
dimensions:
phony_dim_0 = 16 ;
phony_dim_1 = 16 ;
phony_dim_2 = 200 ;
phony_dim_3 = 2 ;
phony_dim_4 = 1 ;
phony_dim_5 = 4 ;
variables:
...
Поскольку это HDF5, размеры создаются как phony_dim_x
. В этом случае phony_dim_0
и phony_dim_1
- это координаты y
и x
соответственно. Я хотел бы соответственно переименовать размеры. Поскольку переименование размеров в HDF5 невозможно (поскольку они технически не существуют), мне нужно сначала преобразовать в netcdf. для этого я использую ncks in.h5 out.nc
.
Однако информация заголовка преобразованного файла:
netcdf control-A-2017-05-12-090500-g1 {
dimensions:
phony_dim_0 = 16 ;
phony_dim_1 = 200 ;
phony_dim_2 = 2 ;
phony_dim_3 = 1 ;
phony_dim_4 = 4 ;
variables:
...
Вот важная часть: два измерения phony_dim_[0,1]
были объединены в единственное измерение, phony_dim_0
. Я предполагаю, что это потому, что они имеют одинаковое значение, и поэтому преобразование netcdf предполагает, что они одинаковы.
Переменная, которая была указана в файле hdf5 как ACCPA(phony_dim_0, phony_dim_1) ;
, теперь ACCPA(phony_dim_0, phony_dim_0) ;
, с двумя одинаковые размеры.
Таким образом, я не могу переименовать размеры индивидуально. Если я сделаю ncrename -d phony_dim_0,y out.nc
, я получу ACCPA(y, y) ;
Может ли кто-нибудь указать мне в правильном направлении, чтобы обойти это?