Could anyone help me how to extract different specific number of rows in a matrix.

1 visualizzazione (ultimi 30 giorni)
I am a matrix of size A= rand(100,1)
I want to generate matrix by extracting 2 rows in interval of 5.
B=A([1:2,6:7,11:12,16:17,........,96:97],:).
Could anyone help me to write in the simplified form to execute in matlab.

Risposte (2)

Walter Roberson
Walter Roberson il 25 Giu 2021
row_idx = reshape((1:5:100) + [0;1],1,[])
row_idx = 1×40
1 2 6 7 11 12 16 17 21 22 26 27 31 32 36 37 41 42 46 47 51 52 56 57 61 62 66 67 71 72
  3 Commenti

Accedi per commentare.


Scott MacKenzie
Scott MacKenzie il 25 Giu 2021
B = A(sort([1:5:100 2:5:100]))
  2 Commenti
jaah navi
jaah navi il 25 Giu 2021
If suppose instead of two rows I need to have value of 2,3,4 in each intervals of 5. In that case the above command doesnt executes. could you help me on this.

Accedi per commentare.

Community Treasure Hunt

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

Start Hunting!

Translated by