创建ifelse函数时出错

时间:2018-07-27 16:24:40

标签: r

现在这是我的代码,我正在尝试创建一个函数来检测单词"DRUG COURT"

 drugcourt <- function(x) {
    ifelse(str_detect("DRUG COURT", print("TRUE"), print("FALSE")))
    }

返回错误:

  

未使用的参数(print(“ FALSE”))

有什么想法吗?谢谢!

2 个答案:

答案 0 :(得分:3)

由于ifelse返回逻辑向量,因此无需使用str_detect。还要注意,str_detect需要两个参数:stringpattern,在您的代码中没有提供这样的字符串。

drugcourt <- function(x) {
  stringr::str_detect(x, "DRUG COURT")
}

> x <- c("dog", "shark", "DRUG COURT")
> drugcourt(x)
[1] FALSE FALSE  TRUE

您甚至可以替换str_detect并使用grepl("DRUG COURT", x)一个R基函数。

答案 1 :(得分:-1)

删除print()-在ifelse()中不需要

drugcourt <- function(x) {
  ifelse(str_detect(x, "DRUG COURT"), "TRUE", "FALSE")
}

drugcourt("HE WENT TO DRUG COURT")
# [1] "TRUE"