How to transpose certain elements in a matrix

Hi,
I have 5by5 matrix, A:
0 9 2 0 0
0 0 0 1 0
0 3 0 5 0
0 0 0 -3 0
0 0 -1 8 0
where I want to transpose only the positive numbers.
Note: The corresponding transposed location is always zero.
so the answer should look like this, B:
0 0 0 0 0
9 0 3 0 0
2 0 0 0 0
0 1 5 -3 8
0 0 -1 0 0
Thanks a lot for your help :)

 채택된 답변

Walter Roberson
Walter Roberson 2018년 1월 2일

1 개 추천

B = A.*(A<0) + (A.*(A>0)).' ;

추가 답변 (0개)

카테고리

도움말 센터File Exchange에서 Logical에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by