查找向量中字符串的所有出现(grep(),which() 函数不太有效)

Finding All occurrences of a string in a vector (grep(), which() functions don't quite work)

我有这个 spreadsheet,想看看字符串 "Drake" 出现的频率。

例如,有些行说 "Drake, Kendrick Lamar, Post Malone" ,但它们没有被我的代码计算在内:

data <- read.csv("C:/Users/Gabriel/Documents/responses.csv", header = TRUE)

artist <- data$artists
grep("Drake$", artist)

artistcount <- which('Drake' == artist)
artistcount

我从 grep()which() 得到的结果都是

# 7 47 71

我想要 "Drake" 出现的所有行。此代码向我显示哪些行将 "Drake" 作为唯一字符串。它应该不仅仅是 3 行。 感谢任何反馈。

"artists" 列中的数据示例如下:

这可以使用 dplyr 的过滤器函数和 stringr 的 str_detech 来完成。

 library(stringr)
 library(dplyr)
 data <- read.csv(choose.files())
 drake <- data %>%
   filter(str_detect(artists, "Drake"))