convert character date string to date vector

Hello
I have a date character string in the following format "2014-07-03T04:00:00.000000Z" within a table structure. I wish to convert this to a format which I can plot on a graph axis using the plot function.
plot(x,y)
where x is the date and y is some time series of data.
How can i convert the current date format?

回答(1 个)

YT
YT 2019-2-4
编辑:YT 2019-2-4
You can use datetime to do it
myString = '2014-07-03T04:00:00.000000Z';
myDateString = datetime(myString,'InputFormat','yyyy-MM-dd''T''HH:mm:ss.SSS''Z','TimeZone','UTC');
dateOnly = myDateString; %create copy for dates
timeOnly = myDateString; %create copy for times
dateOnly.Format = 'dd-MM-yyyy'; %dates / x
timeOnly.Format = 'HH:mm:ss.SSS'; %times / y
or use regular expressions
D = regexp(input,'(?<date>.*?)T(?<time>.*?)Z','names');
%D.date = '2014-07-03'
%D.time = '04:00:00.000000';

2 个评论

input() is an in-built function so naming a variable as input is not a good idea.
ah thanks, changed it ;)

请先登录,再进行评论。

类别

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

产品

版本

R2018a

标签

提问:

2019-2-4

评论:

YT
2019-2-4

Community Treasure Hunt

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

Start Hunting!

Translated by