【问题标题】:Select data along non-conventional dimension with CDO or NCO使用 CDO 或 NCO 沿非常规维度选择数据
【发布时间】:2019-03-01 21:47:22
【问题描述】:

我有大量的 NetCDF 文件,我想从中提取一个位置的少量变量,并将它们合并到一个新的 NetCDF 文件中。文件的尺寸为:

dimensions:
    time = 18 ;
    level = 65 ;
    levelh = 66 ;
    domain = 36 ;

我可以减去/合并所有 domains 的文件,如下所示:

cdo select,name=u,v file1.nc file2.nc out.nc

但所有其他运算符似乎都与空间选择(例如sellonlatbox)或时间(例如seltimestep)有关,但我找不到从 NetCDF 文件中仅选择 1 个domain 的方法。 CDO 或 NCO 可以做到这一点吗?

【问题讨论】:

  • 确实很有趣。我认为 cdo 不适用于此类任务 - 传统气候数据集具有地理空间维度 + 记录维度,但我希望您能得到答案。我在问题中包含了 nco,也许该社区也可以提供帮助。
  • 我最初用 Python 尝试过这个(速度非常慢),所以也非常欢迎使用NCO 的解决方案..

标签: netcdf netcdf4 nco cdo-climate


【解决方案1】:

不确定我是否完全理解问题/意图。 NCO 平等对待所有维度。如果您想要域名 #17,请尝试

ncrcat -v u,v -d domain,17 file1.nc file2.nc out.nc

如果 file1.nc 和 file2.nc 在记录坐标中不连续,则尝试

ncecat -v u,v -d domain,17 file1.nc file2.nc out.nc

添加 20180929:

或者如果您不喜欢这样,并且文件没有记录维度但是时间顺序的,那么在使用 ncrcat 之前将时间维度转换为每个文件的记录坐标

ncks -O --mk_rec_dmn time file1.nc file1.nc
ncks -O --mk_rec_dmn time file2.nc file2.nc
...

等等。并按上述方式进行。这可能是 NCO 的最佳前进方式。

【讨论】:

  • 谢谢查理。这些文件在时间维度上是连续的,但昏暗不是无限的,所以ncrcat 似乎很难识别连续维度(CDO 设法做到了)。 NCO 提供了有关如何解决此问题的提示,但这需要更改(非常)大量的 NetCDF 文件...是否可以告诉 ncrcat 它应该连接哪个维度? ncecat 不起作用,它为除时间之外的所有变量添加维度 record,因此我丢失了除第一个文件中的时间之外的所有时间信息。
猜你喜欢
  • 2020-03-24
  • 2023-02-19
  • 2021-09-18
  • 1970-01-01
  • 1970-01-01
  • 2013-01-08
  • 1970-01-01
  • 1970-01-01
  • 2019-08-20
相关资源
最近更新 更多