新浪博客

matlab中日期相减函数,或者说是时间相减的函数

2014-07-01 21:22阅读:

matlab 中有个函数,datenum,可以把时刻计算成一个唯一的数字,这样两个时刻的相减问题就可以转换成两个数字的相减问题。
例子:
假如 a=2001/01/01 12:00:00 ;b=2001/01/01 12:01:00 两者相差1分钟。
datenum的函数可以输入的是
n1=datenum(year,month,day,hour,minute,second);
这样分别把ab中的年月日时分秒读出来就好了,这里就不介绍怎么读了。
num1=datenum(2001,01,01,12,00,00);
num2=datenum(2001,01,01,12,01,00);
这样,num=num2-num1num就是1分钟转换成数之后的差了。
输入到matlab中可以计算得出:
num1=7.3085e+005;
num2=7.3085e+005;
注意因为matlab显示位数的关系,这两个书看起来是一样的,但是实际是不
一样的,相减有num=6.9444e-004;
这样我们就知道,相差1分钟,换成数的话是相差num=6.9444e-004;
这样,我们可以先算出两个时刻相差的数,然后除以num就可以知道两个时刻相差的分钟数了。
例如
num1=datenum(2001,01,01,12,00,00);
num2=datenum(2001,01,01,13,01,00);
我们知道这两个时刻差61分钟。
tim=(num2-num1)/6.9444e-004;
tim=num2str(tim);
复制到matlab中一算,得到tim=61.0004,最后一位4就是误差了。
如果把红色部分6.9444e-004换成一个小时相差的数 0.0417,那么tim得到的就是ab 两个时刻相差的小时数1.0159了。

我的更多文章

下载客户端阅读体验更佳

APP专享