Chcę napisać małą funkcję do generowania próbek z odpowiednich dystrybucji, na przykład:
makeSample <- function(n,dist,params)
values <- makeSample(100,"unif",list(min=0,max=10))
values <- makeSample(100,"norm",list(mean=0,sd=1))
Większość kodu działa, ale mam problemy ze znalezieniem sposobu przekazania nazwanych parametrów dla każdej dystrybucji. Na przykład:
params <- list(min=0, max=1)
runif(n=100,min=0,max=1) # works
do.call(runif,list(n=100,min=0,max=1)) # działa
do.call(runif,list(n=100,params)) # nie działa
1 odpowiedź
spróbuj:
do.call(runif,c(list(n=100),params))
Twój wariant list (n = 100, params) tworzy listę, w której drugim elementem jest twoja lista parametrów. Użyj str (), aby porównać strukturę listy (n = 100, params) ic (lista (n = 100), params)