location of non zeros

2 visualizaciones (últimos 30 días)
Mate 2u
Mate 2u el 9 de Jul. de 2013
Hi there if I have a 100x1 matrix which has some zeros in it, how can i find the corresponding matrix of "locations" for all the cells which are non-zero.
Eg, 1, 3, 2, 0 , 2, 4, 1, 0 , 0
Output:
1, 2, 3, 5, 6, 7, ......

Respuesta aceptada

Matt J
Matt J el 9 de Jul. de 2013
Editada: Matt J el 9 de Jul. de 2013
>> A=[ 1, 3, 2, 0 , 2, 4, 1, 0 , 0];
>> locations = find(A)
locations =
1 2 3 5 6 7

Más respuestas (1)

Dan Seal
Dan Seal el 9 de Jul. de 2013
Use the logical ~= (not equal). This is not an assignment, but rather a test to see where two things are not equal to each other.
>> a = [1, 3, 2, 0 , 2, 4, 1, 0 , 0]
a =
1 3 2 0 2 4 1 0 0
>> loc = a ~= 0
loc =
1 1 1 0 1 1 1 0 0

Categorías

Más información sobre Operating on Diagonal Matrices en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by