合并Netcdf文件

时间:2013-07-01 15:49:40

标签: csv metadata netcdf

我有大约500个netcdf(.nc)文件。我需要将它们全部组合到一个文件中。我是编程的新手,我没有足够的知识来合并这些文件。任何人都可以解释我们如何可以合并这些文件并解压缩到csv文件或Excel工作表。我们可以使用哪些函数来合并文件。任何帮助都将非常感激。

3 个答案:

答案 0 :(得分:1)

NCO的ncecat可以将任意数量的netCDF文件与

组合在一起
ncecat in1.nc in2.nc ... inN.nc out.nc
ncecat in*.nc out.nc

documentation中描述了开关和其他选项。

答案 1 :(得分:0)

您可以使用

合并具有不同变量的文件
cdo merge in1.nc in2.nc ... inN.nc out.nc

或者如果它们是不同时间段的相同变量,则可以使用

沿时间轴合并
cdo mergetime in1.nc in2.nc ... inN.nc out.nc

请注意,为了做到这一点,CDO必须同时打开所有输入文件,而在某些系统上,打开文件数量限制为256.因此,为了合并500个文件,您需要在2个或更多步骤中完成。

答案 2 :(得分:0)

尝试使用此shell脚本来合并您拥有的500个netcdf文件。这是你能做什么的粗略概念:

  i=1
  for X in `ls -1 *nc`
  do
       cdo merge $X temp.nc out.nc
       i=`expr $i+1`
       if [i!=500];  #This is the run so you want to keep out as your final output
       then 
           mv out.nc temp.nc ##### for use in future merges.  This will build up as $X nc files get merged to it.
  done