2016-03-29 52 views
0

我试图计算MATLAB中两个datetime之间的天数。计算日期时间之间的天数

startDate = datetime('12-Nov-2014 00:00:00','InputFormat','dd-MMM-yyyy HH:mm:ss') 
endDate = datetime('18-Feb-2016 00:00:00','InputFormat','dd-MMM-yyyy HH:mm:ss') 

使用diff我得到以下结果:

diff([startDate endDate]) 

ans = 

    11112:00:00 

我期待的约500天不11000值。

+4

结果是小时。 – excaza

+0

使用'daysact'天(闰年为你)http://uk.mathworks.com/help/finance/daysact.html – GameOfThrows

+1

@GameOfThrows'daysact'是一个工具箱功能,使用''between']( http://www.mathworks.com/help/matlab/ref/between.html) – excaza

回答

0

如果你能避免使用datetime

startDate = datenum('12-Nov-2014 00:00:00'); 
endDate = datenum('18-Feb-2016 00:00:00'); 

days = endDate-startDate 

days = 
     463 
+0

因为它的工作原理.. – shamalaia

+1

这工作正常!几个小时的问题是我无法确定天数。我用这个命令:datenum(endDate)-datenum(startDate) –