matlab - 如何确定向量是否包含 MATLAB 中的日期?
问题描述
你能确定一个向量是否包含日期吗?
我拥有的向量的日期格式为“yyyy-mm-dd”。
我已经看到了该isdatetime
功能,但它似乎对我不起作用。我认为这是因为向量中充满了日期而不是日期时间。
解决方案
该函数isdatetime
实际上并不检查某些东西是否是有效日期,它只检查对象的类型以查看它是否是一个datetime
对象。要查看您是否有一组有效的日期,您可以尝试datetime
从它们创建对象并使用该isnat
函数查看它们是否返回NaT
(即“Not-a-Time”),指示无效/未定义的日期格式。这是一个例子:
>> 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
推荐阅读
- json - 使用 Python 从字典中删除一个字符
- angular - 我是否必须在 Story(Angular Storybook)中的 moduleMetadata.declarations 中一一声明每个使用的组件?
- java - Springboot REST 端点在 Google Cloud Storage 上存储一个空图像
- ios - Swift Combine compactMap 不起作用(Xcode 13)
- linux - 为 Raspberry Pi 4 (arm64) 构建 Qt 5.15.2 时无法链接到交叉编译的 opengl_es2
- java - 如何解决 Looper.prepare() 错误
- flutter - 运行 flutter doctor --android-licenses 时发生异常
- appium - 'uiautomator2' 不是内部或外部命令、可运行程序或批处理文件
- java - 从文本文件中读取,并将其放入链表
- syntax - 在八度函数中定义变量