J'ai une table avec plusieurs chaînes différentes dans la même colonne. Je voudrais être en mesure de rechercher cette colonne et trouver des chaînes différentes, puis retourner des résultats différents pour chaque chaîne différente. Par exemple, si je la colonne suivante de données:Rechercher et renvoyer plusieurs chaînes indépendantes
Seq_ID Column2
1. RNA-ATI_1
2. RNA-ATI_2
3. DNA-FU_1
4. FU-DNA_2
5. DNA-TP1_1
6. RNA-TP1_2
7. RNA-BL_1
8. BL-RNA_2
Je voudrais rechercher la chaîne « ATI » et retour « ATI » et recherche « FU » et retour « FU » et « TP1 » et retourner "TP1" pour que je puisse construire une nouvelle table avec les chaînes dans un column2
séparé. Je peux utiliser grepl
pour faire cela pour une seule valeur, mais je n'arrive pas à comprendre comment le faire pour plusieurs sorties. Certaines des mises en garde sont que les données ne sont pas toujours dans le même ordre ou séparées par le même symbole.
y <- ifelse(grepl("*ATI", tab$Sequence_ID), "Analytical treatment interruption", " ")
Cela semble fonctionner pour un seul, mais je ne peux pas comprendre comment l'étendre à travailler pour plusieurs.
En fin de compte, je voudrais:
Seq_ID Column2
1. RNA-ATI_1 ATI
2. RNA-ATI_2 ATI
3. DNA-FU_1 FU
4. FU-DNA_2 FU
5. DNA-TP1_1 TP1
6. RNA-TP1_2 TP1
7. RNA-BL_1 BL
8. BL-RNA_2 BL
Ainsi, votre résultat attendu ne correspond pas tout à fait ce que vous essayez de faire? Dans votre 'grepl', vous essayez de remplacer' ATI' par 'interruption de traitement analytique'. Je ne vois pas cela dans votre sortie. Comment est-ce pertinent ici? Ou votre sortie attendue est-elle partielle et seulement un problème XY? –