Scilab Home page | Wiki | Bug tracker | Forge | Mailing list archives | ATOMS | File exchange
Please login or create an account
Change language to: English - Português - Русский - 日本語
Aide de Scilab >> Fonctions Elémentaires > Chercher et trier > find

find

trouve les indices des éléments vrais d'un vecteur ou d'une matrice de booléens

Séquence d'appel

[ii]=find(x [,nmax])
[i1,i2,..]=find(x [,nmax])

Paramètres

x

peut être un vecteur booléen, une matrice booléenne, une hypermatrice booléenne, une matrice ou une hypermatrice "standard".

nmax

un entier donnant le nombre maximal d'indices à retourner. La valeur par défaut est -1 qui signifie "tous". Cette option peut être utilisée dans un but d'efficacité en évitant la recherche de tous les indices.

ii, i1, i2, ..

vecteurs d'entiers des indices ou matrices vides

Description

Si x est une matrice booléenne,

ii=find(x) retourne le vecteur des indices i pour lesquels x(i) est "vrai". Si aucun élément vrai n'est trouvé find retourne une matrice vide.

[i1,i2,..]=find(x) retourne le vecteur des indices i1 (pour les lignes) et i2 (pour les colonnes),.. tel que x(i1(n),i2(n),..) est "vrai". Si aucun élément vrai n'est trouvé find retourne des matrices vides dans i1, i2, ...

Si x est une matrice standard ou une hypermatrice find(x) est interprété comme find(x<>0).

find([]) retourne [].

Exemples

beers=["Desperados", "Leffe", "Kronenbourg", "Heineken"];
find(beers=="Leffe") // OK
find(beers=="1664") // KO
find(beers=="Foster") // KO
beers=[beers, "Foster"]
find(beers=="Foster") // OK

A=rand(1,20);
w=find(A<0.4)
A(w)
w=find(A>100)

B=rand(1,20);
w=find(B<0.4,2) //retourne au plus deux valeurs

H=rand(4,3,5); //une hypermatrice
[i,j,k]=find(H>0.9)

H(i(1),j(1),k(1))

Voir aussi

  • boolean — Objets Scilab, variables booléennes et opérateurs & | ~
  • extraction — extraction à partir d'une matrice ou d'une liste
  • insertion — insertion/modification dans une variable
  • recherche de vecteur — finds in a matrix rows or columns matching a vector
Scilab Enterprises
Copyright (c) 2011-2015 (Scilab Enterprises)
Copyright (c) 1989-2012 (INRIA)
Copyright (c) 1989-2007 (ENPC)
with contributors
Last updated:
Wed Jun 15 08:31:01 CEST 2016