如何确定向量在MATLAB中是否包含日期?

时间:2019-05-14 15:38:15

标签: matlab datetime

您可以确定向量是否包含日期吗?

我拥有的向量的日期格式为'yyyy-mm-dd'。

我已经见过isdatetime函数,但是它似乎不适用于我。我认为是因为向量充满了日期而不是日期时间。

1 个答案:

答案 0 :(得分:4)

函数isdatetime实际上并不检查某物是否为有效日期,它仅检查对象的类型以查看其是否为datetime对象。要查看您是否有一组有效的日期,可以尝试从它们中创建datetime个对象,然后使用isnat函数来查看它们是否返回NaT(即“ Not-a-时间”),表示无效/未定义的日期格式。这是一个示例:

>> C = {'2019-01-01'; ...  % Cell array of date strings, last one invalid
        '2019-02-01'; ...
        '2019-03-01'; ...
        'blah'};
>> D = datetime(C)

D = 

  4×1 datetime array

   01-Jan-2019
   01-Feb-2019
   01-Mar-2019
   NaT        

>> isnat(D)

ans =

  4×1 logical array

   0
   0
   0
   1  % Fourth entry failed conversion