Changing matrix column order
이전 댓글 표시
An having difficulty expressing the result I would like, but it is shown in the example below. How can I change the order of matrix A's columns so that they are like matrix B, regardless of the data values.
A =
1 2 3 11 22 33 111 222 333
1 2 3 11 22 33 111 222 333
1 2 3 11 22 33 111 222 333
1 2 3 11 22 33 111 222 333
B =
1 11 111 2 22 222 3 33 333
1 11 111 2 22 222 3 33 333
1 11 111 2 22 222 3 33 333
채택된 답변
추가 답변 (1개)
Ameer Hamza
2020년 5월 18일
편집: Ameer Hamza
2020년 5월 18일
For this particular example
A = ...
[1 2 3 11 22 33 111 222 333
1 2 3 11 22 33 111 222 333
1 2 3 11 22 33 111 222 333
1 2 3 11 22 33 111 222 333];
idx = [1 4 7 2 5 8 3 6 9];
B = A(:, idx);
Result
>> B
B =
1 11 111 2 22 222 3 33 333
1 11 111 2 22 222 3 33 333
1 11 111 2 22 222 3 33 333
1 11 111 2 22 222 3 33 333
Is there a general rule that can be expressed mathematically?
댓글 수: 2
Penny Ibil
2020년 5월 18일
Ameer Hamza
2020년 5월 18일
Do you want to move all columns start with 1 to the left in increasing order, then columns of 2, then 3, so on. Something like this?
카테고리
도움말 센터 및 File Exchange에서 Creating and Concatenating Matrices에 대해 자세히 알아보기
제품
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!