代码如下
crossval <- function(data, lambda=0, ytrans=function(x) x)
我想知道函数参数列表中的函数(x)是什么意思?如果一次又一次地调用相同的函数或什么?如果是这样可以调用函数crossval本身?我需要变量ytrans吗?我们不能只调用函数体中的函数(x)吗?
答案 0 :(得分:2)
@duffymo覆盖了它,但这里的解释有点长。
您看到的内容称为匿名函数。该函数基本上返回相同的对象(=什么都不做)。这也可以明确地写为命名函数
newFunction <- function(x) {
x
}
然后是
crossval <- function(data, lambda=0, ytrans = newFunction)
这是默认值,例如lambda=0
,但默认值是函数本身。
答案 1 :(得分:1)
默认函数是返回传递的x值的函数。如果你不提供,那就是将要使用的功能。