Je suis assez nouveau pour R.
Utiliser la table appelée SE_CSVLinelist_clean
, Je veux extraire les lignes où la variable appelée where_case_travelled_1
_ Ne contient pas les chaînes "Outside Canada"
OR "Outside province/territory of residence but within Canada"
. Puis créez une nouvelle table appelée SE_CSVLinelist_filtered
.
SE_CSVLinelist_filtered <- filter(SE_CSVLinelist_clean,
where_case_travelled_1 %in% -c('Outside Canada','Outside province/territory of residence but within Canada'))
Le code ci-dessus fonctionne lorsque je viens d'utiliser "c" et non pas "-c".
Alors, comment puis-je spécifier ce qui est mentionné ci-dessus lorsque je souhaite réellement exclure les lignes contenant ce contenu en dehors du pays ou de la province?
Merci beaucoup
Notez que %in%
Renvoie un vecteur logique TRUE
et FALSE
. Pour le nier, vous pouvez utiliser !
Devant l'instruction logique:
SE_CSVLinelist_filtered <- filter(SE_CSVLinelist_clean,
!where_case_travelled_1 %in%
c('Outside Canada','Outside province/territory of residence but within Canada'))
En ce qui concerne votre approche originale avec -c(...)
, -
Est un opérateur unaire qui "effectue une arithmétique sur des vecteurs numériques ou complexes (ou sur des objets pouvant être forcés à eux)" (à partir de help("-")
). Puisque vous traitez avec un vecteur de caractère qui ne peut pas être forcé à être numérique ou complexe, vous ne pouvez pas utiliser -
.