how to use datetime for special time format?

조회 수: 2 (최근 30일)
pooria mazaheri
pooria mazaheri 2019년 4월 12일
댓글: pooria mazaheri 2019년 4월 19일
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
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
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
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
pooria mazaheri
pooria mazaheri 2019년 4월 19일
thank you all

댓글을 달려면 로그인하십시오.

카테고리

Help CenterFile Exchange에서 Data Distribution Plots에 대해 자세히 알아보기

제품


릴리스

R2017b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by