如果我想知道什麼是存儲在R函數內的...
的說法,我可以簡單地將其轉換爲一個列表,像這樣在R中,你如何評估...在調用函數中?
foo <- function(...)
{
dots <- list(...)
print(dots)
}
foo(x = 1, 2, "three")
#$x
#[1] 1
#
#[[2]]
#[1] 2
#
#[[3]]
#[1] "three"
我無法弄清楚什麼是如何評價...
在調用函數中。在下一個示例中,我希望baz
的內容返回...
參數bar
。
bar <- function(...)
{
baz()
}
baz <- function()
{
# What should dots be assigned as?
# I tried
# dots <- get("...", envir = parent.frame())
# and variations of
# dots <- eval(list(...), envir = parent.frame())
print(dots)
}
bar(x = 1, 2, "three")
get("...", envir = parent.frame())
回報<...>
,這看起來很有希望,但我無法弄清楚如何提取任何從它有用。
eval(list(...), envir = parent.frame())
引發錯誤,聲稱...
使用不正確。
如何從bar
檢索...
?
+1這是一個有趣的例子。如果你有機會,如果你可以更新這個解釋爲什麼*爲什麼這可能是省略號的必要條件,而不是其他變量呢? – Shane 2010-08-09 17:05:10
@Shane:一個很好的問題。我將進一步挖掘,但這正在迅速進入人腦融化領域。待續... – 2010-08-09 17:41:55