【发布时间】:2020-09-11 17:26:36
【问题描述】:
我在 tidyverse 中有以下代码,并在 words.xlsx 中有单词列表,例如: 你好 世界 程序 数据 分析
v1 = read_excel('words.xlsx') %>%
mutate(words = tolower(words))%>%
pull(1)
for(v in v1){
data1 = data1 %>%
mutate(!! v := as.integer(heading %like% v))
}
【问题讨论】:
-
您能否添加一个可重现的示例并在此基础上显示预期输出?
-
它添加了一列,但也有重复的列,例如你好,你好,世界
-
您应该在示例中添加该信息以及所有此类边缘情况。我已更新答案以仅获取唯一值。此外,您不应使用图像共享数据,请参阅此处了解如何给出可重现的示例stackoverflow.com/questions/5963269
-
谢谢!有效。我尝试使用 v2 重复该过程以获取另一列,但出现错误: mutate_(.data, .dots = compat_as_lazy_dots(...)) 中的错误:缺少参数“.data”,没有默认值
-
你可以从
paste0中删除\\b,即sapply(stringr::str_extract_all(data1$heading, paste0(v1,collapse = '|')), function(x) toString(unique(x)))