在matlab中

时间:2017-05-15 10:39:04

标签: matlab date

我是Matlab的新手,坚持理解数据类型(特别是单元格),可能有一个我不了解的优雅解决方案。

我有一个包含日期的其他单元格的单元格:

30/09/2005
30/12/2005
...
30/09/2016

我还有一个包含相应值的单元格的单元格:

1
5
...
3

我想为所有日子/或工作日插入这些值(对我来说更好)。 我一直在想的是:

  1. 使用 datenum 接收与日期对应的数字;
  2. 将这些日期(现在的数字),相应的值以及它们之间的所有日期(现在的数字)插入 interp1
  3. 看似一个好的计划但功能

    datenum('30/12/2005')  = 13297
    datenum('30/09/2016')  = 13217
    

    给出的数字不能用作早期日期大于后一日期。

1 个答案:

答案 0 :(得分:0)

您可以在日期时间添加任意天数。

t = datetime('now') + days(1);

此外,它还可以为您提供持续时间的天数。因此:

t0 = datetime('30/09/2005');
tEnd = datetime('30/09/2016');
durationInDays = days(tEnd - t0);
myDates(0) = t0;
for i = 2:durationInDays
   myDates(i) = myDates(i-1) + days(1);
end