我有一个基本上包含单词段落的字符向量。我想分别计算特定单词在每一行中出现的次数,然后创建一个新向量来保存这个数字。如何使用 dplyr 实现这一目标?(任何其他可用的方法也可以)。
我最接近解决方案的是这个链接:计算一个单词出现的次数(dplyr),但它并没有给我我想要的东西。
我有一个基本上包含单词段落的字符向量。我想分别计算特定单词在每一行中出现的次数,然后创建一个新向量来保存这个数字。如何使用 dplyr 实现这一目标?(任何其他可用的方法也可以)。
我最接近解决方案的是这个链接:计算一个单词出现的次数(dplyr),但它并没有给我我想要的东西。
您可以按分隔符拆分段落并对条件检查求和:
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