3

我已经看到了几个与省略号相关的问题,但我仍然不确定将“...”作为参数传递是什么意思。我对 R 完全陌生,但我试图理解以下内容的含义:

forest <- randomForest(x = train.x, y = train.y, ...)
4

1 回答 1

16

参数的典型用法...是当一个函数在f内部调用一个函数g...用来传递参数时,g没有明确列出所有这些参数作为它自己的正式参数g例如,当函数 f 中有很多用户可能需要或不需要的可选参数时,可能需要这样做。然后,与其添加所有这些可选参数f并增加复杂性,不如简单地使用....

正如您所问的,这意味着f该函数将简单地忽略这些并将它们传递给g. 有趣的是,它...甚至可能有g不想要的参数,它也会忽略它们,比如h它是否也需要使用...。但也请参阅this so post进行详细讨论。

例如考虑:

f <- function (x, y, ...) {
  # do something with x
  # do something with y
  g(...) # g will use what it needs
  h(...) # h will use that it needs
  # do more stuff and exit
}

此外,请参阅 intro-R手册中的此处以获取使用par.

此外,这篇文章还展示了如何解压...如果一个人正在编写一个使用它的函数。

于 2013-07-17T00:07:21.503 回答