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

23 次查看(过去 30 天)
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

采纳的回答

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

更多回答(1 个)

Wayne King
Wayne King 2012-4-13
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)';

类别

Help CenterFile Exchange 中查找有关 Multidimensional Arrays 的更多信息

标签

产品

Community Treasure Hunt

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

Start Hunting!

Translated by