将默认值设置为函数/包R

时间:2016-02-25 21:11:55

标签: r function package default

我已经创建了一个包含函数的包,要求输入3个值,如下所示:

example.foo("directory",vA1,vA2)

现在,我想为vA1和vA2设置默认值。我写了下面这段代码,但我不知道为什么它不起作用

  if (!exists("vA1")) {
    vA1 = 2
  }

2是vA1的默认值。当我运行包时,我得到一个"参数" vA1"缺少,没有默认"。如何设置此功能的默认值?谢谢!

1 个答案:

答案 0 :(得分:3)

正如Pascal指出的那样,函数的默认值是通过提供命名参数来提供的。例如:

 fun <- function(x="Hello World") print(x)

 fun()
 [1] "Hello World"

 fun("and good bye")
 [1] "and good bye"