convert array 3d array into 3 column(ranked)

1 Ansicht (letzte 30 Tage)
joms
joms am 1 Aug. 2019
Bearbeitet: joms am 8 Aug. 2019
How can i convert array 3d array into 3 column(ranked)
INPUT
SPEED=[1 2]'
TRQ=[10 20 30]
Z=[0 1;3 5; 4 3]
A=TRQ
B=SPEED'
STEP1 -Convert Table into Array
STEP2 -Sort Array based on Z
Result=[{'SPEED', 'TRQ','Z'},[2;1;2;1;2;1],[20;30;30;30;10;10],[5;4;3;3;1;0]]
  1 Kommentar
Walter Roberson
Walter Roberson am 1 Aug. 2019
Step0 = [{'', '', 'SPEED', ''};
{'', 'Z'}, num2cell(SPEED.');
{'T'; 'R'; 'Q'}, num2cell(TRQ(:)), num2cell(Z) ];

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Andrei Bobrov
Andrei Bobrov am 1 Aug. 2019
Bearbeitet: Andrei Bobrov am 1 Aug. 2019
SPEED=[1 2]'
TRQ=[10 20 30]
Z=[0 1;3 5; 4 3]
[x,y] = ndgrid(TRQ,SPEED);
T = array2table([y(:),x(:),Z(:)],'VariableNames',{'SPEED','TRQ','Z'});
Tout = sortrows(T,{'Z','SPEED'},{'descend','descend'})
without using table
[x,y] = ndgrid(TRQ,SPEED);
T1 = [y(:),x(:),Z(:)];
T2 = sortrows(T,[-3,-1]);
out = [{'SPEED','TRQ','Z'};num2cell(T2)];
  1 Kommentar
joms
joms am 1 Aug. 2019
Thank you . excactly the answer i was looking for.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Matrices and Arrays finden Sie in Help Center und File Exchange

Produkte


Version

R2013b

Community Treasure Hunt

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

Start Hunting!

Translated by