Bonjour à tous,

je souhaite supprimer les lignes d'un data frame pour lesquelles le code_taxon ne contient pas le pattern "_sp" en fin de chaîne de caractères

j'ai, par exemple, réussi à coder dans le sens inverse (c'est à dire garder les lignes qui contiennent un code_taxon avec le pattern "_sp")

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
taxon_sp <- grep(pattern = "_sp" , bdd$taxon, value = TRUE, fixed = TRUE)
bdd1 <- subset(bdd, bdd$taxon %in% taxon_sp)
je souhaiterai arriver à :

- signaler que le pattern "_sp" se trouve en fin de chaîne de caractères car si je code :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
taxon_sp <- grep(pattern = "_sp$" , bdd$taxon, value = TRUE, fixed = TRUE)
cela renvoi vecteur vide ...

- sélectionner l'inverse (non "_sp") ou en supprimant les lignes qui ne sont pas dans ce vecteur taxon_sp

Je pense qu'il doit exister d'autres fonctions car grep ou subset et %in% ne marche que dans le sens = et pas !=

J'espère avoir été assez claire ..
Merci pour votre aide !