Identify postion in a date vector

1 view (last 30 days)
Hiii,
I am trying to identify the index of the day and month in a date string.
I used datevec and now I have an array with date strings like this:
x= [09-12-2014 07:45
09-12-2014 08:00
09-12-2014 08:15
09-12-2014 08:30]
I want to identify the position of the day and month but I am not being able to do so..
Can anyone help?
Inês

Accepted Answer

Star Strider
Star Strider on 21 May 2015
Actually, you used datestr not datevec although datevec would make your task much easier.
This works:
x= ['09-12-2014 07:45'
'09-12-2014 08:00'
'09-12-2014 08:15'
'09-12-2014 08:30'];
[day, mon] = strread(x', '%2d-%2d-%-*4d %*2d:%*2d');
  2 Comments
Inês Mendes
Inês Mendes on 23 May 2015
Edited: Star Strider on 23 May 2015
if i have an interface in which a user chooses a day and month, how do i extract only the data from that date?
Imagine I have:
x= ['08-11-2014 07:45'
'10-12-2014 08:00'
'09-12-2014 08:15'
'09-12-2014 08:30'];
and
Y=[2
5
6
7]
If the user choose to study November 8th how do i extract only Y=[2].
Can you help?
Thanks!
Star Strider
Star Strider on 23 May 2015
My pleasure!
This may be a bit more than you asked for, but this is how I would do it (using the listbox and msgbox functions because I like the GUI dialogue functions):
x= ['08-11-2014 07:45'
'10-12-2014 08:00'
'09-12-2014 08:15'
'09-12-2014 08:30'];
Y= [2
5
6
7];
[dateidx,v] = listdlg('PromptString','Select a date', 'SelectionMode', 'Single', 'ListString',x);
msgbox(sprintf('The value corresponding to %s is %0.2f',x(dateidx,:),Y(dateidx)), 'Result');

Sign in to comment.

More Answers (0)

Categories

Find more on Dates and Time in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!