如何獲取遞歸應用函數中的當前函數?下面是一個簡單的例子:獲取當前調用的函數來編寫匿名遞歸函數
myfun <- function(x) {
if(is.list(x)){
lapply(x, myfun)
} else {
length(x)
}
}
我想使它匿名代替,但我不知道如何告訴lapply
使用當前的功能時,它沒有名字。我想Recall
但是,這並不工作:
(function(x) {
if(is.list(x)){
lapply(x, Recall)
} else {
length(x)
}
})(cars)
而且match.call()[[1]]
不利於匿名函數。
好,但爲什麼你'lapply()'這'X [-1]'而不是'x' ? –
@JoshO'Brien好抓。我用'sys.function(0)(x [-1])'''''''lapply''來測試它... – agstudy