how to use datetime for special time format?
2 次查看(过去 30 天)
显示 更早的评论
hi guys
i have this kind of time format:
but "datetime" function does not work.
would u help me? thanks in advance.
1 个评论
Brian Hart
2019-4-12
Can you post the command that doesn't work, with the error message? Did you try specifying the InputFormat setting?
回答(1 个)
Walter Roberson
2019-4-13
It is not possible to create a single datetime() call that will handle all three of those lines. You need to separate out the lines with the two different formats. The InputFormat to use for the 312 line is 'yyyy-MM-dd HH:mm:ss.SSSSSS' . For the 311 and 313 line, the format would be the same without the '.SSSSSS'
2 个评论
Peter Perkins
2019-4-16
Walter's right; the4 usual thing to do would be to use 'yyyy-MM-dd HH:mm:ss to convert "most" of them, then go back and use 'yyyy-MM-dd HH:mm:ss.SSSSSS' to convert the rest. You can find the ones that didn't convert using isnat.
>> s = ["2019-04-16 11:56:14" "2019-04-16 11:56:15.123" "2019-04-16 11:56:16"]
s =
1×3 string array
"2019-04-16 11:56:14" "2019-04-16 11:56:15.123" "2019-04-16 11:56:16"
>> d = datetime(s,'Format','dd-MMM-yyyy HH:mm:ss.SSS')
d =
1×3 datetime array
16-Apr-2019 11:56:14.000 NaT 16-Apr-2019 11:56:16.000
>> d(isnat(d)) = datetime(s(isnat(d)),'InputFormat','yyyy-MM-dd HH:mm:ss.SSS')
d =
1×3 datetime array
16-Apr-2019 11:56:14.000 16-Apr-2019 11:56:15.123 16-Apr-2019 11:56:16.000
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Data Distribution Plots 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!