在处理气象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)