netcdf维度变量解释

时间:2015-07-07 11:39:19

标签: netcdf

我试图了解NetCDF标准是否允许这样做。它并没有对我产生影响,但也许有一个原因是它在图书馆一级不被禁止。 Ncdump:

netcdf tt {
dimensions:
    one = 2 ;
    two = 1 ;
variables:
    int64 one(two) ;
data:

 one = 1 ;
}

在python中生成这个文件的代码:

from  netCDF4 import Dataset
rr=Dataset('tt.nc','w')
rr.createDimension('one',2)
rr.createDimension('two',1)
var1=rr.createVariable('one','i8',('two'))
var1[:]=1
rr.close()

请注意与维度具有相同名称的变量,但尺寸与自身不同?!

所以有两个问题:

  1. 标准是否允许这样做?

  2. 如果没有,是否应该受到图书馆的限制?

2 个答案:

答案 0 :(得分:2)

它是有效的,因为属性的名称,维度的名称和变量的名称都存在于不同的名称空间中。

答案 1 :(得分:1)

它是有效的,但显然会使代码和输出混乱,并且在专业意义上是不可接受的。但请注意,与分配给它们的维度具有相同名称和大小的单维数组称为“坐标变量”。

例如,您经常会看到一个名为latitude的变量,该变量是1D且具有名为latitude的维度。 ncksncdump应在该变量显示旁边显示(CRD),表示它确实与纬度数组协调。