Azzera filtri
Azzera filtri

Find all non zero values in an array AND display the values

23 visualizzazioni (ultimi 30 giorni)
Hi,
I have a matrix of 1x1177 and I wanted to display all the nonzero values with the array and the location of them.
I am able to get the location of them using:
find(matrixOne)
But I also need the values to be displayed.
Is there a way of doing this without me having to look through the array manually?
Many thanks

Risposta accettata

Thomas
Thomas il 13 Apr 2012
x = randi([0 4],1,1177)
[row,col,value]=find(x)

Più risposte (1)

Wayne King
Wayne King il 13 Apr 2012
x = randi([0 4],1,1177);
indices = find(x~=0);
y = x(indices);
Or
x = randi([0 4],1,1177);
y = nonzeros(x);
The output of nonzeros is a column vector, so if you want it as a row vector, you can transpose
y = nonzeros(x)';

Categorie

Scopri di più su Multidimensional Arrays in Help Center e File Exchange

Tag

Prodotti

Community Treasure Hunt

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

Start Hunting!

Translated by