find index of an arry in matlab

2 vues (au cours des 30 derniers jours)
Rica
Rica le 12 Août 2019
Commenté : Rica le 12 Août 2019
I have a big array and i want to find the index of the element of an array in the big array.
I know this could be easily solves with functions such find or ismember. But my goal is to give the index of the first number in the case when the the number is present more than one time in the big array like the numbers 2.2, 5.1, 6 and 7.
e.g
BigArray=[1 2 2.2 3 2.2 5 5.1 5.1 6 6 7 7.........]
ArryToBeFound=[1 2 2.2 5.1 6 7]
Solution:
index=[1 2 3 7 9 11]
Do you have any idea how to solve this?
Thank you

Réponse acceptée

Guillaume
Guillaume le 12 Août 2019
ismember is indeed the functio to use:
[~, where] = ismember(ArrayToBeFound, BigArray)
where is the index of the 1st element where the element is found, or 0, if not found. ismember guarantees that it's always the first index.
  1 commentaire
Rica
Rica le 12 Août 2019
next time i should read the documentation of ismember ;-)

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Characters and Strings dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by