grouping elements of a matix according to an increasing order of dates

Hi all,
i have a matrix A which I have sorted according to the command zoi=sortrows(A, 3 ) and the result is zoi=
'PDL12' '01-01-2011' [ -0.0138]
'PDL13' '01-01-2011' [ 0.3529]
'PDL12' '01-11-2009' [ -0.0812]
'PDL13' '01-11-2009' [ -0.2377]
'PDL12' '04-10-2009' [ -0.0208]
And I would like to have
'PDL12' '04-10-2009' [ -0.0208]
'PDL12' '01-11-2009' [ -0.0812]
'PDL13' '01-11-2009' [ -0.2377]
'PDL12' '01-11-2009' [ -0.0812]
'PDL13' '01-01-2011' [ 0.3529]
In other words, i want to group all the elements that correspond to the earliest date, then all the elements that correspond to the date after the earliest one and so forth. Any suggestions?
thanks

 Accepted Answer

a={ 'PDL12' '01-01-2011' [ -0.0138]
'PDL13' '01-01-2011' [ 0.3529]
'PDL12' '01-11-2009' [ -0.0812]
'PDL13' '01-11-2009' [ -0.2377]
'PDL12' '04-10-2009' [ -0.0208]}
d=datenum(a(:,2),'dd-mm-yyyy');
[l,idx]=sortrows(d);
a(idx,:) % output

More Answers (0)

Categories

Tags

Asked:

on 24 May 2012

Community Treasure Hunt

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

Start Hunting!