How to arrange the values of the matrix according to index number?

2 visualizzazioni (ultimi 30 giorni)
I have index number of matrix A =[1 3 5 6], B= [ 2 4]. The values corresponding to index number matrix A is A1=[3 4 -7 5; 2 5 10 -9; -11 56 9 -4; 6 -7 4 20] and the values corresponding to index number matrix B is B1=[13 4 -70 51; -1 95 12 -9].
I want to generate a matrix C with index number of A and B after sorting like C=[ 1 2 3 4 5 6] and the values of the matrix C1 will arrange according to the index numb of C.
How will be arranging the values of C1 from A1 and B1 according to the index number C? Please help on this
  7 Commenti
AS
AS il 28 Set 2020
Modificato: madhan ravi il 28 Set 2020
C_new is showing index number only and its va;ue will be
C_value= 4 by 6
3 13 4 -1 -7 5
2 4 5 95 10 -9
-11 -70 56 12 9 -4
6 51 -7 -9 4 20
Final output will 4 by 6 matrix.
I have tried with taking C_value=zeros(4, 6) and then try to store the values from A1 and B1 with their proper index number. But unable to do.

Accedi per commentare.

Risposta accettata

madhan ravi
madhan ravi il 28 Set 2020
Modificato: madhan ravi il 28 Set 2020
C_new = zeros(numel(A), numel([A, B]));
C_new(:, A) = A1;
C_new(:, B) = B1.'

Più risposte (1)

madhan ravi
madhan ravi il 30 Set 2020
A faster version of the other answer:
C_new = zeros(numel(A), numel([A, B]));
[IX, ix] = sort([A, B]);
C_new(:, IX) = [A1, B1.'];
C_new = C_new(:, ix)

Categorie

Scopri di più su Creating and Concatenating Matrices in Help Center e File Exchange

Tag

Community Treasure Hunt

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

Start Hunting!

Translated by