Existe-t-il une fonction permettant de compter le nombre de fois qu'un mot clé est contenu dans un jeu de données?
Par exemple, si dataset <- c("corn", "cornmeal", "corn on the cob", "meal")
, le nombre serait 3.
Supposons pour le moment que vous vouliez le nombre d'éléments contenant "maïs":
length(grep("corn", dataset))
[1] 3
Une fois que vous maîtriserez mieux les bases de R, vous voudrez peut-être regarder le paquet "tm".
EDIT: Je me rends compte que cette fois-ci, vous vouliez du «maïs», mais à l'avenir, vous voudrez peut-être utiliser Word- «du maïs». Bill Dunlap a souligné un modèle plus compact de grep permettant de rassembler des mots entiers:
grep("\\<corn\\>", dataset)
Une autre façon assez pratique et intuitive de le faire consiste à utiliser la fonction str_count
du paquetage stringr
:
library(stringr)
dataset <- c("corn", "cornmeal", "corn on the cob", "meal")
# for mere occurences of the pattern:
str_count(dataset, "corn")
# [1] 1 1 1 0
# for occurences of the Word alone:
str_count(dataset, "\\bcorn\\b")
# [1] 1 0 1 0
# summing it up
sum(str_count(dataset, "corn"))
# [1] 3
Vous pouvez également faire quelque chose comme ce qui suit:
length(dataset[which(dataset=="corn")])
Je le ferais simplement avec une division de cordes comme:
library(roperators)
dataset <- c("corn", "cornmeal", "corn on the cob", "meal")
# for each vector element:
dataset %s/% 'corn'
# for everything:
sum(dataset %s/% 'corn')