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

1 Ansicht (letzte 30 Tage)
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

Akzeptierte Antwort

Thomas
Thomas am 24 Mai 2012
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

Weitere Antworten (0)

Kategorien

Mehr zu Embedded Coder finden Sie in Help Center und File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by