5.1 Define a function (函数定义)

使用关键字function定义函数(和python一样,形式参数可以指定缺省值):

函数名 <- function(形式参数) {
    函数体
}

如果函数体很简单,就可以用省略花括号的一行来定义函数:

f <- function(x) x^2

【Return value】函数体中最后一个表达式的结果or显式地使用return(x)返回结果;和python一样,遇到return(x)后停止一切。

用来查看函数信息的三个常用函数:

>>> f <- function(x) x^2

>>> body(f)
x^2

>>> formals(f)
$x

>>> environment(f)
<environment: R_GlobalEnv>

5.2 Call a function (函数调用)

和python几乎完全一样。一些特殊的点:

5.3 Anonymous function (匿名函数)

没有函数名的函数:

>>> (function(x) x^2)(3)
[1] 9

无名函数常常用于作为一些函数的参数输入。