How to rearrange a cell array with a given index vector

98 Ansichten (letzte 30 Tage)
I have the following cell array as matrices for its content. Matrices are of variable dimension.
c{1} = [1,2,3];
c{2} = [2,3,5,6];
c{3} = [1,2];
What is requires is to sort the given cell array 'c' according to a index vector.
if index vector is idx,
idx = [2;3;1];
I want the cell array 'c' to look like
c{1} = [2,3,5,6];
c{2} = [1,2];
c{3} = [1,2,3];
I tried using the command
c = c(idx);
which should work if c were a numerical array, but the command returns in an error. How do I get about this?
Thank you.
  1 Kommentar
madhan ravi
madhan ravi am 22 Okt. 2020
What was the error message? It works without any problem.

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Sudhakar Shinde
Sudhakar Shinde am 22 Okt. 2020
Bearbeitet: Sudhakar Shinde am 22 Okt. 2020
change semicolon to comma to seperate 2 & 3 from id:
idx = [2,3,1];
  5 Kommentare

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)


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

Community Treasure Hunt

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

Start Hunting!

Translated by