基本上,这是该问题的转发:https://confluence.ecmwf.int/pages/viewpage.action?pageId=149341027
我已经从CDS下载了ERA5。从每个所考虑年份的1月1日到12月31日,每个日历日的输入文件都有24小时步长(0、1、2、3、4,..,23)。
此处的ECMWF状态https://confluence.ecmwf.int/display/CKB/ERA5%3A+How+to+calculate+daily+total+precipitation,必须通过累积例如1979年1月1日,将1月1日的步骤1、2,...,23和1月2日的步骤0相加。这意味着1979年1月1日的步骤0不包括在当天的总降水量中。为了计算1979年1月2日的总降水量,我们还使用了当天的步骤1、2、3,...,23和1月3日的步骤0,依此类推。]
似乎在python中有这样的选项:
import xarray as xr # import xarray library ds_nc = xr.open_dataset('name_of_your_file.nc') # read the file daily_precipitation = ds_nc.tp.resample(time='24H').sum('time')*1000 # calculate sum with frequency of 24h and multiply by 1000 daily_precipitation.to_netcdf('daily_prec.nc') # save as netCDF
现在,我想知道使用气候数据操作员(CDO)是否也可以轻松实现这一目标。通常,我会使用CDO中的
daysum
命令进行任何此类计算,但是我不确定这是正确的。
有人建议使用:
cdo -f nc copy out.nc aux.nc cdo -delete,timestep=1, aux.nc aux1.nc cdo -b 32 timselsum,24 aux1.nc aux2.nc cdo -expr,'ppt=tp*1000' -setmissval,-9999.9 -remapbil,r240x120 aux2.nc era5_ppt_prev-0_1979-2018.nc
但是我不确定这是正确的-有什么建议吗?
基本上,这是该问题的转贴:https://confluence.ecmwf.int/pages/viewpage.action?pageId=149341027我已经从CDS下载了ERA5。输入文件具有24小时的步骤(0、1、2、3,...
对于这类问题,CDO中有用的命令是shifttime