使用可变数量的参数在R中创建函数,

时间:2018-02-08 20:54:25

标签: r function

在R中创建函数时,我们通常指定参数的数量,如

function(x,y){
}

这意味着它只需要两个参数。但是当没有指定参数的数量时(对于一个案例我必须使用两个参数但是另一个案例我必须使用三个或更多个参数)我们如何处理这个问题?我对编程很陌生,所以非常感谢。

2 个答案:

答案 0 :(得分:5)

d <- function(...){
    x <- list(...) # THIS WILL BE A LIST STORING EVERYTHING:
    sum(...)       # Example of inbuilt function
}

d(1,2,3,4,5)

[1] 15 

答案 1 :(得分:3)

您可以使用...指定其他数量的参数。例如:

myfun <- function(x, ...) {
    for(i in list(...)) {
        print(x * i)
    }
}

> myfun(4, 3, 1)
[1] 12
[1] 4
> myfun(4, 9, 1, 0, 12)
[1] 36
[1] 4
[1] 0
[1] 48
> myfun(4)