is.element()和%in%未返回正确的值

时间:2018-06-02 11:07:39

标签: r exists

下面是R脚本包含用于确定元素是否在列表PPal

中的逻辑

abc

PPal不存在的R输出

执行时

> RPal("abc")

它返回

Error in RPal("abc") : Palette not found.

脚本:

PPal <- list (
  abc = c("#fda726"),
  def = c("#9aa5b4"),
  ghi = c("#bdcad0")
)

RPal <- function(name){

  pal <- NULL

  if (nargs() != 1){
    stop("Enter 1 valid palettes.")
  }

  if (!(is.element(name,PPal))){
    stop("Palette not found.")
  }
  pal <- PPal[[name]]
  pal
}

还尝试%in%

  if (!(name %in% PPal)){
    stop("Palette not found.")
  }

0 个答案:

没有答案