错误在matlab中减去两个日期数字

时间:2014-06-01 23:47:16

标签: matlab date

我使用matlab,我有以下问题。我有两个日期向量:

A{1,1} = '25-02-2011 0:03:32';

A{2,1} = '25-02-2011 0:03:32';

A{3,1} = '25-02-2011 0:03:32';

A{4,1} = '25-02-2011 0:03:32';

A{5,1} = '25-02-2011 0:03:32';

B{1,1} = '24-02-2011 23:57:36';

B{2,1} = '24-02-2011 23:48:44';

B{3,1} = '24-02-2011 23:59:42';

B{4,1} = '24-02-2011 23:59:16';

B{5,1} = '24-02-2011 23:59:00';

使用datenum将它们转换为数字后,我得到了下一个结果:

**对于矢量A **

11539.0024537037

11539.0024537037

11539.0024537037

11539.0024537037

11539.0024537037

对于矢量B

11174.9983333333

11174.9921759259

11174.9997916667

11174.9994907407

11174.9993055556

A-B等于

364.004120370371

364.010277777779

364.002662037037

364.002962962964

364.003148148149

问题在于从B中减去A后,结果不是4到15分钟给出或接受的差异,而是一天,我想问题是日期是在不同的日子但非常接近彼此,我仍然不知道如何解决它。

1 个答案:

答案 0 :(得分:3)

这是你想要的吗?在stackoverflow上发布问题之前,请参阅MATLAB的文档。如果我没有弄错的话,你基本上只做了datenum(A)-datenum(B),而没有关心数据的组织方式。

CODE:

A{1,1} = '25-02-2011 0:03:32';
A{2,1} = '25-02-2011 0:03:32';
A{3,1} = '25-02-2011 0:03:32';
A{4,1} = '25-02-2011 0:03:32';
A{5,1} = '25-02-2011 0:03:32';
date_a=datenum(A, 'dd-mm-yyyy HH:MM:SS')

B{1,1} = '24-02-2011 23:57:36';
B{2,1} = '24-02-2011 23:48:44';
B{3,1} = '24-02-2011 23:59:42';
B{4,1} = '24-02-2011 23:59:16';
B{5,1} = '24-02-2011 23:59:00';
date_b=datenum(B, 'dd-mm-yyyy HH:MM:SS')

date_a-date_b
(date_a-date_b)*24*60

输出:

ans =

    0.0041
    0.0103
    0.0027
    0.0030
    0.0031


ans =

    5.9333
   14.8000
    3.8333
    4.2667
    4.5333