J'essaie de créer des clusters de contenu simples et faciles à écrire avec plusieurs expressions régulières.Regex Matching Valeurs négatives
Imaginez une liste de chaînes: c ("a", "b", "ac") Les groupes que je dois définir sont "Tous: a" et "Tous: b". Donc les valeurs "a" et "ac" sont "A" et "b" est "B".
myDF$contentGroup <- sub(".*a.*", "A", myDF$stringList)
Cependant, cela se traduira par une colonne dans mon dataframe « contentGroup » qui contient la valeur de « stringList » si aucune correspondance est survenue. Donc, si je fais la même ligne de code avec "B", il écrasera les "A".
myDF$contentGroup <- sub(".*b.*", "B", myDF$stringList)
Je ne peux pas trouver comment faire un cluster simple dans une seule ligne de code. Rendre le plus simple possible.
'Grepl()' doit faire le travail. 'x <- c (" a "," b "," ac "); x [grepl ("a | A", x)] 'est-ce que vous voulez? –
'' [[grep ('a', x, fixed = TRUE)] <- 'A'; x [grep ('b', x, fixed = VRAI)] <- 'B'' – Sotos
^Ne pas oublier d'ajouter 'fixed = TRUE' dans ces statmentsfor ~ X10 boost dans les performances –