Matlab not recognizing dates

I have a vector of dates in the format yyyymm, however matlab is not recognizing it for a timetable. Any suggestions?

 采纳的回答

You did not mention how you were importing them.
Try importing them this way:
dv = {'202011'
'202012'}
datetime(dv, 'InputFormat','yyyyMM', 'Format','MM-yyyy')
That works for me.

3 个评论

it's a 1093x1 double
That is similar to changing header to csv using writetable with a similar solution:
dv = [202011
202012];
DT = datetime(num2str(dv), 'InputFormat','yyyyMM', 'Format','MM-yyyy')
producing:
DT =
2×1 datetime array
11-2020
12-2020
Or if you want them in the same format as the input:
DT = datetime(num2str(dv), 'InputFormat','yyyyMM', 'Format','yyyyMM')
producing:
DT =
2×1 datetime array
202011
202012
.
You can skip the num2str with a little bit of arithmetic.
x = (202001:202006).'
x = 6×1
202001 202002 202003 202004 202005 202006
DT = datetime(100*x+1, 'ConvertFrom', 'yyyymmdd')
DT = 6×1 datetime array
01-Jan-2020 01-Feb-2020 01-Mar-2020 01-Apr-2020 01-May-2020 01-Jun-2020

请先登录,再进行评论。

更多回答(0 个)

类别

帮助中心File Exchange 中查找有关 Dates and Time 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by