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

1 view (last 30 days)
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.

Answers (2)

Walter Roberson
Walter Roberson on 25 Jun 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 Comments

Sign in to comment.


Scott MacKenzie
Scott MacKenzie on 25 Jun 2021
B = A(sort([1:5:100 2:5:100]))
  2 Comments
jaah navi
jaah navi on 25 Jun 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.

Sign in to comment.

Categories

Find more on Interpolation in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!