Find number of zeros in a part of a matrix

4 visualizaciones (últimos 30 días)
Panouoilis
Panouoilis el 5 de Ag. de 2013
Comentada: Jan el 16 de Mzo. de 2018
I need to find the number of zeros that are contained in a part of a matrix. For example if the matrix is [1 2 2 2 2 2 0 2 2 2 0 3 0 0 4 5 6 7 0 0 8] is there a fast way to get the number of zeros between the fifth and tenth element? In this case the answer would be 1.
Thank you!

Respuestas (3)

Evan
Evan el 5 de Ag. de 2013
Editada: Evan el 5 de Ag. de 2013
A = [1 2 2 2 2 2 0 2 2 2 0 3 0 0 4 5 6 7 0 0 8];
numZeros = sum(~A(5:10));

Image Analyst
Image Analyst el 5 de Ag. de 2013
Three ways that I can think of off the top of my head:
data = [1 2 2 2 2 2 0 2 2 2 0 3 0 0 4 5 6 7 0 0 8];
numberOfZeros = length(data) - nnz(data)
numberOfZeros = sum(data==0)
numberOfZeros = nnz(~data)
  1 comentario
Image Analyst
Image Analyst el 5 de Ag. de 2013
Note: this does the whole array because I think it's a dangerous assumption to look just between the 5th and 10th elements, which works well for your example but not in general.

Iniciar sesión para comentar.


Sarumathi C
Sarumathi C el 15 de Mzo. de 2018
Editada: Image Analyst el 15 de Mzo. de 2018
How do I find the zeros locations in a array by using "for loop" and store in the new array matrix?
Example:
[1 2 3 0;
4 5 6 0;
7 8 0 9.....]
I need the output like
[ 4
4
3]
It's a zeros Location
If zeros location is same,we should find the difference between the two rows...
Like,
In the above Matrix we have a 4. & 4 there is zeros locations are same so we should find out the difference between that two rows like
4-1=3;
5-2=3....
So the output like
[3 3 3
7 8 0 9....]
  2 comentarios
Image Analyst
Image Analyst el 15 de Mzo. de 2018
Use find() and a for loop:
m=[1 2 3 0;
4 5 6 0;
7 8 0 9
4 0 0 7
0 5 0 0]
for row = 1 : size(m, 1)
zeroLocations{row} = find(m(row, :) == 0)
end
celldisp(zeroLocations)
Jan
Jan el 16 de Mzo. de 2018
@Sarumathi C: Please open a new thread for a new question. This is better than hijacking an existing thread by attaching a new question in the section for answers. Thanks.

Iniciar sesión para comentar.

Categorías

Más información sobre Matrix Indexing 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