Подсчитайте, сколько раз слово появляется в каждой строке и сохраняйте в новом столбце (dplyr) - PullRequest
0 голосов
/ 25 сентября 2018

У меня есть символьный вектор, содержащий в основном абзацы слов.Я хотел бы посчитать, сколько раз определенное слово появляется в каждой строке отдельно, а затем создать новый вектор для хранения этого числа.Как я могу добиться этого с помощью dplyr?(Любой другой доступный метод тоже подойдет).

Ближайшее решение, которое я нашел, находится по этой ссылке: Подсчитать, сколько раз слово появляется (dplyr) , но оно не даетмне именно то, что я хочу.

1 Ответ

0 голосов
/ 25 сентября 2018

Вы можете разделить абзацы по их разделителю и суммировать условную проверку:

df <- structure(list(words = c("CDjointdisease state glasses CDdiabetes eyesight", 
                               "accidents_combined docvisits4w citysize CDliverdisease CDosteoporosis"
)), .Names = c("words"), row.names = 1:2, class = "data.frame")


> df
                                                                      words
1                          CDjointdisease state glasses CDdiabetes eyesight
2     accidents_combined docvisits4w citysize CDliverdisease CDosteoporosis

df$count <- sapply(strsplit(df$words, " "), function(x){
  sum(x == "eyesight")
})

> df
                                                                      words count
1                          CDjointdisease state glasses CDdiabetes eyesight     1
2     accidents_combined docvisits4w citysize CDliverdisease CDosteoporosis     0
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...