Outputting how far down a set of data a set of numbers are in a large data set

1 visualización (últimos 30 días)
Hi everyone,
Could I get some help on this, I have a large data set of a random set of data, 100x7 in a identity called v, I want to find all the numbers which are equal to or less than 2 in this set, but i dont want it to outut the value of these numbers, but to output the row on which those values are found on. At the moment i get answers ranging between 1-700 using the find function within matlab. Where I want the outputs to only be ranging from 1-100, as there is in essence 100 rows that these values can be found.
In short I want to find a program which outputs the row number which numbers only suiting my conditions lie on, as opposed to the position they fall in, for a data set of 700 numbers. Preferably I want the function to include a loop/if condition if possible
Many thanks,
Ethan

Respuesta aceptada

Kelly Kearney
Kelly Kearney el 10 de Nov. de 2020
If you supply 2 outputs to find, it will return the row and column indices corresponding to each true element:
[rowidx, colidx] = find(data < 2);
  2 comentarios
Et.B200
Et.B200 el 10 de Nov. de 2020
Editada: Et.B200 el 10 de Nov. de 2020
Thats brill, but what if you just wanted the rowidx to be set to a element and outputted? Also how would you remove any repeat rowidx values if they appear more than once?
Kelly Kearney
Kelly Kearney el 10 de Nov. de 2020
Take a look at the unique function to remove repeats. Not quite sure what you mean by the other part of your question.

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

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