NCL文件和文件变量¶
数据分析总错不开文件操作,NCL支持多种气象常用文件格式。 下面就简单地介绍下NCL文件和文件变量。
文件和文件变量是两个截然不同的概念,通常而言, 文件
实际上是 引用文件的变量 , 也就是使用函数 addfile
时被赋值的变量。如 f = addfile("air.nc", "r")
,此处
的 f 即为文件( 引用文件的变量 )。
文件变量则指代包含在文件中的变量,如一个GFS分析资料文件
中就包含有多个文件变量。有许多获取文件变量信息的方式,
例如使用函数 print
来打印一个文件( 引用文件的变量 )时,
文件中的所有属性、维数、变量和坐标变量都将被输出到屏幕,
其效果与二进制封装的可执行文件 ncl_filedump
相同。
此外还有很多程序可以获取文件变量信息
函数或程序 | 用途 |
---|---|
list_filevars | 列出文件中的所有文件变量和文件变量属性名 |
getfilevarnames | 返回文件中所有文件变量名组成的数组 |
filevardimsizes 或 getfilevardimsizes | 返回文件变量的维数大小,与dimsizes相比不需要将文件变量 读入内存,因此非常高效,查询文件变量大小时应使用此函数 |
getfilevaratts | 返回文件变量的所有属性组成的数组 |
getfilevardims | 返回文件变量所有维名称组成的数组 |
打开数据文件¶
在数据可视化一节中已经提到如何使用函数 addfile
来读取NCL支持
的文件,这里继续详细论述。
f = addfile(pathname, status)
pathname
是UNIX目录文件名,写目录结构时既可以使用绝对路径,
也可以使用相对路径;注意即使目录中的文件没有扩展名,也必须写出文件
扩展名(也就是常说的后缀名)。
status
指定文件打开后的操作方式,可选 "r"
"w"
"c"
。 "r"
意味着只读;"w"
意味着读和写,当pathname指定的文件或目录不具备相应权限时将引发异常;
"c"
意味着创建文件,当pathname指定的文件已经存在时将引发
异常。