Est-ce que les élements d'un vecteur sont contenus dans un autre vecteur ?

Aprés avoir sué un peu de sang, j'ai fini par trouver ...

> X <- letters[c(3,1,2)] > X [1] "c" "a" "b" > Y <- letters[rep(c(2:8),3)] > Y [1] "b" "c" "d" "e" "f" "g" "h" "b" "c" "d" "e" "f" "g" "h" "b" "c" "d" "e" "f" "g" "h" > Y %in% X [1] TRUE  TRUE FALSE FALSE FALSE FALSE FALSE  TRUE  TRUE FALSE FALSE FALSE FALSE FALSE  TRUE  TRUE FALSE FALSE FALSE FALSE FALSE

Autrement dit, le biniou existe, c'est %in% mais ?%in% ne donne rien, faut passer par ?match ...

Utilisation :

> Y[Y %in% X] [1] "b" "c" "b" "c" "b" "c"

Je ne garde de Y que les lignes pour lesquelles la valeur de Y est un élément de X.