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?

Antworten (1)

YT
YT am 4 Feb. 2019
Bearbeitet: YT am 4 Feb. 2019

2 Stimmen

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 Kommentare

madhan ravi
madhan ravi am 4 Feb. 2019
Bearbeitet: madhan ravi am 4 Feb. 2019
input() is an in-built function so naming a variable as input is not a good idea.
YT
YT am 4 Feb. 2019
ah thanks, changed it ;)

Melden Sie sich an, um zu kommentieren.

Kategorien

Produkte

Version

R2018a

Gefragt:

am 4 Feb. 2019

Kommentiert:

YT
am 4 Feb. 2019

Community Treasure Hunt

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

Start Hunting!

Translated by