Increase nonzero values without deleting zeros
Mostrar comentarios más antiguos
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 comentarios
KSSV
el 12 de Abr. de 2017
Where you want to place the non zeros numbers?
Respuesta aceptada
Más respuestas (1)
Adam
el 12 de Abr. de 2017
X = ( X ~= 0 ) .* ( X + 10 );
Categorías
Más información sobre Data Type Conversion en Centro de ayuda y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!