在处理气象nc格式数据时,时间变量往往不是已YYYYMMDD格式给出日期,而是距某一天(如1900年1月1日)XXX小时或XXX日。
为此,可由以下代码将nc的时间变量转为日期:

matlab代码:

t0 = datetime(1900,1,1);
%% 针对一年365天或者一年366天情况
date_yyymmdd = t0 + double(time(:))/24; %time为距1900年1月1日00时的小时数一维数组
date_yyymmdd = t0 + time(:); %time为距1900年1月1日00时的日数一维数组

%% 针对一年360天情况
days_360 = daysadd(t0,time(:)/24,1) % 小时数据转日期
days_360 = daysadd(t0,time(:),1) % 日数据转日期

python代码:

time = dataset.variables['time']  # 读取时间
real_time = netCDF4.num2date(time,time.units)
Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐