Clear Filters
Clear Filters

Column and row rearrangement

2 views (last 30 days)
nur yusof
nur yusof on 23 Feb 2016
Commented: Star Strider on 25 Feb 2016
How to rearrange column and row matrix?For example, I have 10x10 matrix size. I want to move the 10th column and row into 1st column and row.Then,1st column and row will move to 2nd column and row. 2nd row and column will move to 3rd column and row. And also, repeat for next column and row.

Accepted Answer

Star Strider
Star Strider on 23 Feb 2016
Use the circshift function. With it, you can do everything you seem to describe wanting to do with your matrix.
  4 Comments
nur yusof
nur yusof on 25 Feb 2016
Ok.Noted. I have tried the code.It success to move the column and row that I want but, the matrix size is reduced.The original matrix size is 10x10, but at final it only had 6x6. Let me rephrase, what I really want to do:-
K[1:10,1:10] %original position of column & row matrix size
K2[2 4 6 8 10 1 3 5 7 9,2 4 6 8 10 1 3 5 7 9] %New arrangement of column and row position in matrix
Hope you can help me.
Star Strider
Star Strider on 25 Feb 2016
When I ran my code (and I just ran it again to be sure), the final ‘M’ matrix size was (10x10) and the (8x8) submatrix rows and columns were correctly rotated and correctly inserted back into the original (10x10) ‘M’ matrix when I examined it. I don’t understand how you got a (6x6) matrix with my code.
I’m not certain what you want as your result, but this looks correct to me:
K = randi(99,10)
K2 = K([2 4 6 8 10 1 3 5 7 9]',[2 4 6 8 10 1 3 5 7 9]')
You have to transpose the row and column reference vectors.

Sign in to comment.

More Answers (0)

Categories

Find more on Creating and Concatenating Matrices 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!