首页 > 解决方案 > 如何在 R 中为函数参数添加选项?也就是说,当用户点击选项卡时,他们会看到参数可以采用的所有可能值

问题描述

假设我有一个带有参数 x 的函数。

func<-function(x){
    if(x=='a'){.......}
    else if (x=='b'){........}
    else if (x=='c'){.........}
}

....... 代表我希望执行的一些代码。

每当我从控制台调用函数时,点击 TAB 可以让我看到函数采用的参数,我如何还显示参数的可能值以便用户可以选择一个。

标签: rrstudio

解决方案


您可以创建一个包并将文档添加到您的函数中。例如,您可以运行devtools::create("~/mypackage")~/mypackage如果需要,可以更改)。~/mypackage/R然后在被调用的地方创建一个文件myfunc.R。在这个文件中设置以下

#' @title What does this function do?
#' @param x if \code{a} then 1, if \code{b} then 2, if \code{c} then 3.
#' @param ... may have an effect in the future.
#' @export
myfunc <- function(x, ...){
  if(x=='a'){
    1
  }
  else if (x=='b'){
    2
  }
  else if (x=='c'){
    3
  } else
    stop(sQuote(x), " not implemented")
}

然后运行setwd("~/mypackage")​​,devtools::document()devtools::install(). 之后您可以调用library(mypackage),之后您可以在 Rstudio 中看到以下内容

在此处输入图像描述

上面使用了roxygen2和一个 R 包,它可能比你要求的更多。虽然,它

...显示参数的可能值,以便用户可以选择一个。


推荐阅读