Вот рабочий пример
Когда я запускаю следующее:
example <- list()
example[[1]] <-matrix(c(1000000,2000000,2000000,5000000), nrow=4, ncol = 1)
example[[2]] <-matrix(c(1500000,2200000,2200000,5000000, 3500000), nrow=5, ncol = 1)
custom_func=function(X, O_low, O_high, A_low, A_high){
d_vec = vector(length = 1)
D_occ = pmin(pmax(X-O_low,0),O_high)
TOTAL_D = pmin(pmax(sum(D_occ)-A_low,0),A_high)
d_vec[i]=TOTAL_D
return(mean(d_vec, na.rm=TRUE))
}
rapply(example, custom_func(O_low=1000000, O_high=3000000, A_low=5000000, A_high=25000000), how='list')
Я получаю следующую ошибку:
Error in pmax(X - O_low, 0) :
argument "X" is missing, with no default
X должен быть example[[1]]
а затем example[[2]]
, но как мне на самом деле передать это? В конце концов, O_low, O_high, A_low, A_high все будут зацикленными значениями, и размер примера будет варьироваться.
Если я сделаю что-то похожее на приведенное ниже, кажется, что он автоматически обнаруживает, что мне нужно передать ... rapply(example, mean, how='list')