当iterable不是函数的第一个参数时

时间:2014-03-07 23:27:13

标签: r apply sapply

问题很简单但我找不到答案。

我有myfun <- function(x, y)。如何在sapply

列表中y使用此功能

申请超过x我会这样做

iterables <- 1:10
sapply(iterables, myfun, y)

但是我希望迭代变为y。

1 个答案:

答案 0 :(得分:7)

您有多种选择 - 例如sgibb提到的一个依赖于R如何解释函数参数,即myfun(y, x = x)myfun(x, y)相同。

我更喜欢创建匿名函数,因为它更容易理解正在发生的事情:

sapply(iterables, function(iter) myfun(x, iter))