Aquí está mi código actual:En R, ¿cómo usar un valor predeterminado "nulo" para un argumento de una función?
my.function <- function(my.arg=""){
if(my.arg == "")
my.arg <- rnorm(10)
return(mean(my.arg))
}
Me vuelve este:
> my.function(rbinom(10, 100, 0.2))
[1] 18.5
Warning message:
In if (a == "") a <- rnorm(10) :
the condition has length > 1 and only the first element will be used
he intentado con my.arg=c()
o my.arg=0
, pero siempre consigo una advertencia o un error. Y el manual R no dice mucho sobre este tema.
¿Alguna idea? ¡Gracias por adelantado!
por lo que desea devolver el valor medio de una distribución arbitraria, y si no le pasa una distribución y los parámetros adecuados ?, desea devuelve la media de 'rnorm (10)'? – Chase
@Chase sí, pero es solo un ejemplo falso, mi función "real" es más complicada ... La solución de Karsten funciona. – tflutre
¿Qué esperarías de 'my.function (NA)'? – Henry