我有一个关于在使用时将多个参数传递给函数的问题lapply
in R
.
当我使用 lapply 的语法时lapply(input, myfun);
- 这很容易理解,我可以这样定义 myfun :
myfun <- function(x) {
# doing something here with x
}
lapply(input, myfun);
和元素input
被传递为x
论证myfun
.
但是如果我需要传递更多参数怎么办myfunc
?例如,它的定义如下:
myfun <- function(x, arg1) {
# doing something here with x and arg1
}
我如何使用这个函数来传递两个input
元素(如x
论点)和其他一些论点?
如果您查找帮助页面,参数之一lapply
是神秘的...
。当我们查看帮助页面的参数部分时,我们发现以下行:
...: optional arguments to ‘FUN’.
所以你所要做的就是将你的其他论点包含在lapply
作为参数调用,如下所示:
lapply(input, myfun, arg1=6)
and lapply
,认识到arg1
不是一个参数,它知道如何处理,会自动将其传递给myfun
。所有其他的apply
函数可以做同样的事情。
附录:您可以使用...
当你也在编写自己的函数时。例如,假设您编写了一个调用的函数plot
在某些时候,您希望能够通过函数调用更改绘图参数。您可以将每个参数作为参数包含在函数中,但这很烦人。相反,你可以使用...
(作为您的函数和其中对绘图的调用的参数),并且将您的函数无法识别的任何参数自动传递给plot
.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)