爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
查看: 9210|回复: 1

cdo 年份合并、月份提取、日期提取

[复制链接]

新浪微博达人勋

发表于 2021-11-27 20:20:49 | 显示全部楼层 |阅读模式

登录后查看更多精彩内容~

您需要 登录 才可以下载或查看,没有帐号?立即注册 新浪微博登陆

x
本帖最后由 长长长长的街 于 2021-11-27 20:42 编辑

假设:提取若干年的逐日冬季资料(这个对大家来说是个比较常见的问题)
困难:冬季跨年且存在闰年的问题
情景:1948-2013年逐日高度场资料:hgt.1948.nc, hgt.1949.nc , .... , hgt.2013.nc
其他解决办法:NCL、Fortran、GrADS可以批量读取并且去掉闰年,或者有条件判断,脚本较长
cdo解决办法如下:
1、将所有年份合并到一起:(参见UsersGuide P25)
cdo  cat  hgt.*.nc  hgt.1948-2013.nc
生成的hgt.1948-2013.nc为1948-2013年所有时次的整合nc文件。
2、提取所有年份的12,1,2月:(参见UsersGuide P36)
cdo  selmon,1,2,12  hgt.1948-2013.nc  hgt.1948-2013.1212.nc
生成的hgt.1948-2013.1212.nc为1948-2013年所有12-2月的整合nc文件。
3、由于冬季的第一年是从1948年12月开始,那么1948年的1,2月以及2013年的12月份(假设数据到2013年12月份)需要剔除:(参见UsersGuide P36)
cdo  seldate,1948-12-01,2013-02-28  hgt.1948-2013.1212.nc  hgt.1948-2012.DJF.nc
生成的hgt.1948-2012.DJF.nc 即为1948/1949至2012/2013的逐日冬季资料。

评分

参与人数 1金钱 +5 收起 理由
Xno + 5

查看全部评分

密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2024-12-23 13:50:28 | 显示全部楼层
我是先剔除掉1,2和12月,再筛选的冬季,不过我是在程序里做的,没有用过cdo。很好的思路!
密码修改失败请联系微信:mofangbao
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

本版积分规则

Copyright ©2011-2014 bbs.06climate.com All Rights Reserved.  Powered by Discuz! (京ICP-10201084)

本站信息均由会员发表,不代表气象家园立场,禁止在本站发表与国家法律相抵触言论

快速回复 返回顶部 返回列表