Increase nonzero values without deleting zeros
이전 댓글 표시
I have a vector X.
X=[0 0 0 0 1 1 1 1 0 0 0 0 0 0 2 2 2 2 2 2 0 0 0 3 3 3 3 0 0 0 0 0 4 4 4]
I want to increase the values of the nonzero elements in vector X by 10 However, when I do this using the find function I end up just having a vector without the zeros.
Y=X((find(X~=0)))+10;
Y=[11 11 11 11 22 22 ... ]
Is there a way to do this without using a for loop?
댓글 수: 2
KSSV
2017년 4월 12일
Where you want to place the non zeros numbers?
채택된 답변
추가 답변 (1개)
Adam
2017년 4월 12일
X = ( X ~= 0 ) .* ( X + 10 );
카테고리
도움말 센터 및 File Exchange에서 Data Type Conversion에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!