首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >R grepl内循环

R grepl内循环
EN

Stack Overflow用户
提问于 2020-03-19 23:30:14
回答 1查看 31关注 0票数 0

你好,我想给包含特定字符串的行添加一个特定值。例如,这是可行的:

代码语言:javascript
复制
df[grepl("acting", df$Q), "QG"] <- "SP"
df[grepl("did not", df$Q), "QG"] <- "SP"
df[grepl("Somehow", df$Q), "QG"] <- "SP"

然而,我想把所有的东西都放在一个循环中,以减少代码。这不起作用(我不知道为什么)

代码语言:javascript
复制
assignSubgroup <- function(keywords, group){
  for(k in keywords){
    df[grepl(k, df$Q), "QG"] <- group
  }
}

assignSubgroup(c("acting", "did not", "Somehow"), "SP")

它不会抛出错误,但对数据帧没有任何影响。问题出在哪里?谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-03-19 23:36:32

使用基数R,不使用函数或循环:

代码语言:javascript
复制
df$QC[grepl("acting|did not|Somehow", df$Q)] <- "SP"
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60760333

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档