swap columns of a matrix

조회 수: 72 (최근 30일)
Rasmus
Rasmus 2014년 2월 25일
Hello guys/girls
How do i swap columns??
I have this
k_minus =
-46 -43 -26 -14 7 19 11 32 39 45 45
0 -4 -7 -7 -44 -44 -7 -7 -15 -15 0
and I want the columns to be in opposite order - How do I do this? and can do this in one go?
  댓글 수: 1
Keerthi Krishna PARVATHANENI
Keerthi Krishna PARVATHANENI 2021년 9월 15일
Easy way is to swap the coloums based on the positon
For example:
A=[10 20 30;
40 50 60];
swap the coloum 1 to 2 can be done by
A(:,[2 1 3])
ans =
20 10 30
50 40 60
Exact approach can be adopted ot swap rows
A([2 1],:)
ans =
40 50 60
10 20 30
I think, this can be easy way with minium code.
Enjoy :)

댓글을 달려면 로그인하십시오.

채택된 답변

Thomas
Thomas 2014년 2월 25일
편집: Thomas 2014년 2월 25일
You could also use
out= fliplr(k_minus)
  댓글 수: 1
Rasmus
Rasmus 2014년 2월 25일
That is actually easier! :)

댓글을 달려면 로그인하십시오.

추가 답변 (2개)

Mischa Kim
Mischa Kim 2014년 2월 25일
편집: Mischa Kim 2014년 2월 25일
Use
k_minus_rev = k_minus(:, [length(k_minus(1,:)):-1:1])
  댓글 수: 4
Jos (10584)
Jos (10584) 2014년 2월 25일
You do not need the length statement by using the keyword END:
MyMatrix_withReversedColumns = MyMatrix(:,end:-1:1)
but I do suggest you stick to FLIPLR. It is the same, but much easier to read!
kk
kk 2019년 4월 2일
Thank you for this answer! It has helped me "merge" two matrices, i.e. creating a matrix consisting of the first column of matrix A, first column of matrix B, second column of matrix A, second column of matrix B, etc.

댓글을 달려면 로그인하십시오.


rishabh gupta
rishabh gupta 2018년 1월 12일
you can also use: k_minus_rev = k_minus(:, [length(k_minus):-1:1])
  댓글 수: 2
Stephen23
Stephen23 2018년 1월 12일
편집: Stephen23 2018년 1월 12일
The square brackets are totally superfluous, and using end is simpler than using length (of course length should be avoided generally because its output changes depending on the input array size: better to use numel or size with a specific dimension).
So a better (simpler, clearer, less buggy) is exactly as Jos already gave four years ago:
k_minus(:,end:-1:1)
Helen Joan
Helen Joan 2019년 4월 30일
is it possible to do this with a loop?

댓글을 달려면 로그인하십시오.

카테고리

Help CenterFile Exchange에서 Creating and Concatenating Matrices에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by