matlab中的datenum和datestr

这篇文章展示了如何使用Matlab的datenum函数创建从2001年1月1日开始,按小时递增的时间序列,以解决时间格式问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目标:创建一个从2001-01-01:00:00:00开始的,逐一小时的时间序列值

软件:matlab

函数:datenum

代码:

nhour=100;
t_prediction =(0:nhour)';
%M * 1 的日期向量,其中,M 表示预报的时间步数,单位为日
% tim = datenum(strcat(datestr(today,'yyyy-mm-dd '), string(t_prediction), ':00:00'));
tim = datenum(strcat('2001-01-01',' / ', string(t_prediction), ':00:00'));

timstr=datestr(tim)

结果:

timstr =

  101×20 char 数组

    '01-Jan-2001 00:00:00'
    '01-Jan-2001 01:00:00'
    '01-Jan-2001 02:00:00'
    '01-Jan-2001 03:00:00'
    '01-Jan-2001 04:00:00'
    '01-Jan-2001 05:00:00'
    '01-Jan-2001 06:00:00'
    '01-Jan-2001 07:00:00'
    '01-Jan-2001 08:00:00'
    '01-Jan-2001 09:00:00'
    '01-Jan-2001 10:00:00'
    '01-Jan-2001 11:00:00'
    '01-Jan-2001 12:00:00'
    '01-Jan-2001 13:00:00'
    '01-Jan-2001 14:00:00'
    '01-Jan-2001 15:00:00'
    '01-Jan-2001 16:00:00'
    '01-Jan-2001 17:00:00'
    '01-Jan-2001 18:00:00'
    '01-Jan-2001 19:00:00'
    '01-Jan-2001 20:00:00'
    '01-Jan-2001 21:00:00'
    '01-Jan-2001 22:00:00'
    '01-Jan-2001 23:00:00'
    '02-Jan-2001 00:00:00'
    '02-Jan-2001 01:00:00'
    '02-Jan-2001 02:00:00'
    '02-Jan-2001 03:00:00'
    '02-Jan-2001 04:00:00'
    '02-Jan-2001 05:00:00'
    '02-Jan-2001 06:00:00'
    '02-Jan-2001 07:00:00'
    '02-Jan-2001 08:00:00'
    '02-Jan-2001 09:00:00'
    '02-Jan-2001 10:00:00'
    '02-Jan-2001 11:00:00'
    '02-Jan-2001 12:00:00'
    '02-Jan-2001 13:00:00'
    '02-Jan-2001 14:00:00'
    '02-Jan-2001 15:00:00'
    '02-Jan-2001 16:00:00'
    '02-Jan-2001 17:00:00'
    '02-Jan-2001 18:00:00'
    '02-Jan-2001 19:00:00'
    '02-Jan-2001 20:00:00'
    '02-Jan-2001 21:00:00'
    '02-Jan-2001 22:00:00'
    '02-Jan-2001 23:00:00'
    '03-Jan-2001 00:00:00'
    '03-Jan-2001 01:00:00'
    '03-Jan-2001 02:00:00'
    '03-Jan-2001 03:00:00'
    '03-Jan-2001 04:00:00'
    '03-Jan-2001 05:00:00'
    '03-Jan-2001 06:00:00'
    '03-Jan-2001 07:00:00'
    '03-Jan-2001 08:00:00'
    '03-Jan-2001 09:00:00'
    '03-Jan-2001 10:00:00'
    '03-Jan-2001 11:00:00'
    '03-Jan-2001 12:00:00'
    '03-Jan-2001 13:00:00'
    '03-Jan-2001 14:00:00'
    '03-Jan-2001 15:00:00'
    '03-Jan-2001 16:00:00'
    '03-Jan-2001 17:00:00'
    '03-Jan-2001 18:00:00'
    '03-Jan-2001 19:00:00'
    '03-Jan-2001 20:00:00'
    '03-Jan-2001 21:00:00'
    '03-Jan-2001 22:00:00'
    '03-Jan-2001 23:00:00'
    '04-Jan-2001 00:00:00'
    '04-Jan-2001 01:00:00'
    '04-Jan-2001 02:00:00'
    '04-Jan-2001 03:00:00'
    '04-Jan-2001 04:00:00'
    '04-Jan-2001 05:00:00'
    '04-Jan-2001 06:00:00'
    '04-Jan-2001 07:00:00'
    '04-Jan-2001 08:00:00'
    '04-Jan-2001 09:00:00'
    '04-Jan-2001 10:00:00'
    '04-Jan-2001 11:00:00'
    '04-Jan-2001 12:00:00'
    '04-Jan-2001 13:00:00'
    '04-Jan-2001 14:00:00'
    '04-Jan-2001 15:00:00'
    '04-Jan-2001 16:00:00'
    '04-Jan-2001 17:00:00'
    '04-Jan-2001 18:00:00'
    '04-Jan-2001 19:00:00'
    '04-Jan-2001 20:00:00'
    '04-Jan-2001 21:00:00'
    '04-Jan-2001 22:00:00'
    '04-Jan-2001 23:00:00'
    '05-Jan-2001 00:00:00'
    '05-Jan-2001 01:00:00'
    '05-Jan-2001 02:00:00'
    '05-Jan-2001 03:00:00'
    '05-Jan-2001 04:00:00'

关键是这个需要有个斜杠,不然时间是乱的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值