我正在研究降水数据。我需要在NetCDF文件中重新排列维度。我文件中的尺寸是(time, lat, lon)
顺序。我需要他们在(lat, lon, time)
顺序。
我尝试了以下方法:
ncpdq -a lat,lon,time infile.nc outfile.nc
现在,我得到了我想要的尺寸(lat, lon, time)
。
然而,lat
维度变成UNLIMITED
这是错误的。时间维度应该是UNLIMITED
维度。这就是我得到的:
dimensions:
lon = 720 ;
lat = UNLIMITED ; // (360 currently)
time = 1404 ;
如何重新排序从(time, lat, lon)
到(lat, lon, time)
的尺寸?
我做了一张支票,对我而言,重新订购似乎有效。我用ncdump -h inputfile.nc
和ncdump -h outputfile.nc
检查了文件信息,比较是这样的:
如你所见,重新排序已经完成,第一个维度,即我的情况下的latc
,变得无限。
幸运的是,你可以这样做来修复纬度:
ncks --fix_rec_dmn lat output.nc -o outfixed.nc ; mv outfixed.nc outputfile.nc
并再次限制时间:
ncks --mk_rec_dmn time outputfile.nc -o outunlim.nc ; mv outunlim.nc outputfile.nc
所以现在输出文件应该没问题。