function_name <- function(arg_1, arg_2, ...) {
// 函数体
}输出 32 到 44 到的所有数字:
In [28]:
print(seq(32,44))
[1] 32 33 34 35 36 37 38 39 40 41 42 43 44
计算两个数到平均数:
In [29]:
print(mean(25:82))
[1] 53.5
计算 41 到 68 所有数字之和:
In [30]:
print(sum(41:68))
[1] 1526
定义一个函数,用于计数一个系列到平方值:
In [31]:
new.function <- function(a) {
for(i in 1:a) {
b <- i^2
print(b)
}
}
In [32]:
new.function <- function(a) {
for(i in 1:a) {
b <- i^2
print(b)
}
}
调用函数,并传递参数:
In [33]:
new.function(6)
[1] 1 [1] 4 [1] 9 [1] 16 [1] 25 [1] 36
In [34]:
new.function <- function() {
for(i in 1:5) {
print(i^2)
}
}
调用函数,不需要传递参数:
In [35]:
new.function()
[1] 1 [1] 4 [1] 9 [1] 16 [1] 25
创建函数:
In [36]:
new.function <- function(a,b,c) {
result <- a * b + c
print(result)
}
不带参数名:
In [37]:
new.function(5,3,11)
[1] 26
带参数名:
In [38]:
new.function(a = 11, b = 5, c = 3)
[1] 58
创建带默认参数的函数:
In [42]:
new.function <- function(a = 3, b = 6) {
result <- a * b
print(result)
}
调用函数,但不传递参数,会使用默认的:
In [43]:
new.function()
[1] 18
调用函数,传递参数:
In [44]:
new.function(9,5)
[1] 45
In [45]:
f <- function(x) {
10
}
f()
10
In [47]:
new.function <- function(a, b) {
print(a^2)
print(a)
print(b) # 使用到 b,但未传入,所以会报错
}
# 传入一个参数
new.function(6)
[1] 36 [1] 6
Error in new.function(6): argument "b" is missing, with no default
Traceback:
1. print(b)
2. .handleSimpleError(function (cnd)
. {
. watcher$capture_plot_and_output()
. cnd <- sanitize_call(cnd)
. watcher$push(cnd)
. switch(on_error, continue = invokeRestart("eval_continue"),
. stop = invokeRestart("eval_stop"), error = NULL)
. }, "argument \"b\" is missing, with no default", base::quote(new.function(6)))