У меня есть функция в R, скажем
f1 <- функция (x, y, vec, func0, ...) {<br> ...
...
...
return (out)}
Аргументы func0 и vec в этой функции f1 являются функциональным объектом и некоторым векторным объектом соответственно.Теперь я хочу повторить эту функцию «повторений» раз (все остальное то же самое).Я сохранил аргументы этой функции в списке, так как есть много аргументов, и я продолжаю изменять их, чтобы делать репликации снова.
list1 <- list (x, y, vec, func0, другие аргументы) </p>
Тогда я хочу сделать, f1_reps <- lapply (1: reps, f1, list1) </p>
Я получаю ошибку, когда я делаю это, так как аргументы функции func0 и vec не найдены.
Любая помощь в этом направлении будет полезна.Вот пример ложной ситуации.
Вот пример,
a <- function(n){
sqrt(n)
}
N = 100
out <- rep(NA,N)
# simple function with multiple arguments
foo <- function(a=a, b= c(1:3), c= 1000){
for(n in 1:N){
out[n] <- b%*%b+ a(n)*c
}
return(out)
}
candidates <- list(a=a, b = c(1:3), c=1000)
lapply(1:4, foo(a=candidates$a,b=candidates$b,c=candidates$c)) ## Doesn't work
lapply(1:4, foo, a=candidates$a, b=candidates$b, c=candidates$c) ## Doesn't work
candidates2 <- c(a=a, b = c(1:3), c=1000) # A vector of arguments
lapply(1:4, foo, a=candidates2$a, b = c(candidates2$b1,candidates2$b2,candidates2$b3), c=candidates2$c) #Doesn't work either