Borrar filtros
Borrar filtros

How do i get element array from find function?

1 visualización (últimos 30 días)
Anonymous Matrix
Anonymous Matrix el 18 de Feb. de 2017
Comentada: Star Strider el 18 de Feb. de 2017
I know that the find function gives me an array with the location of elements. How do I convert those location indices into an array that displays the element instead?

Respuestas (1)

Image Analyst
Image Analyst el 18 de Feb. de 2017
If you have a 1-D vector, it gives the indexes directly. If you have a 2-D matrix, it gives rows and columns,
[rows, columns] = find(yourArray = someValue);
I don't know what you mean by the element - is it the linear index, the row(s) and column(s), or the array element itself? If you're testing a range instead of equality, you can use the linear index instead of the rows and columns to get the values:
m = magic(5);
linearIndexes = find(m>=18)
result = m(linearIndexes)
  5 comentarios
Stephen23
Stephen23 el 18 de Feb. de 2017
Editada: Stephen23 el 18 de Feb. de 2017
@Anonymous Matrix: I (and other volunteers here) try to show beginners that they can also search for information in the documentation: the documentation has information on how MATLAB works, and you want information on how to use MATLAB... it is a match made in heaven! The more you practice searching for information in the documentation the more you will learn, and the better you will be at using MATLAB.
I don't expect beginners to know how to use MATLAB. I do encourage beginners to read the documentation: MATLAB has very readable documentation. Use it.
Star Strider
Star Strider el 18 de Feb. de 2017
A general discussion on this is in the documentation on Matrix Indexing (link).

Iniciar sesión para comentar.

Categorías

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