我正在尝试从数千个 netcdf 文件中获取单个 csv 文件,其中每个文件代表一个时间点。这些文件包含时间、纬度、经度和 4 个不同的天气变量。我的想法是将文件合并到一个 netcdf 文件中,然后我可以从中编写一个 csv 文件,但我不确定如何用简单的代码合并 29000 个文件,而不必一遍又一遍地写入文件名。
问问题
215 次
1 回答
1
使用 netCDF 运算符。要么cdo
要么nco
。
要及时合并您的文件cdo
,只需:
cdo mergetime input_files output_file
并使用 nco (根据https://linux.die.net/man/1/ncrcat):
ncrcat input_files outputfile
您可以input_files
使用通配符指定*
。基本上,如果您的数千个文件被命名为:file_000001.nc,file_000002.nc,...,file_vwxyz.nc,请执行以下操作:
cdo mergetime file_* files.nc
另一种方法是遍历文件名并使用 r 或您正在使用的任何工具执行所有操作。不过,cdo 或 nco 是解决您的问题的正确工具。
于 2019-01-18T09:42:50.860 回答