Où puis-je trouver de la documentation sur l'utilisation de ...
dans les fonctions? Des exemples seraient utiles.
Le mot utilisé pour décrire ...
est "Ellipsis". Le savoir devrait faciliter la recherche d'informations sur la construction. Par exemple, le premier hit sur Google est une autre question sur ce site: Comment utiliser la fonction Ellipsis de R lors de l'écriture de votre propre fonction?
Un petit exemple pour commencer.
f <- function(x, ...)
{
dots <- list(...) #1
if(length(dots) == 0) return(NULL)
cat("The arguments in ... are\n")
print(dots)
f(...) #2
}
f(1,2,3,"a", list("monkey"))
La fonction, f
, stocke tout sauf le premier argument d'entrée dans la variable Ellipsis. Pour accéder à son contenu, il est plus simple de le convertir en liste (1). Cependant, l'utilisation principale est de passer des arguments aux sous-fonctions, ce qui ne nécessite aucune conversion (2).
Vous devriez vous diriger vers "Définition du langage R", section 2.1.9 Point-point-point. Il est livré avec l'installation de R. Exécutez help.start()
dans une session interactive pour afficher l'aide HTML, puis cliquez sur le lien La définition du langage R. Vous pouvez également utiliser la version PDF ou HTML du site principal.
Quoi qu'il en soit, ...
Est utilisé pour faire correspondre les arguments formels non spécifiés d'une fonction.
args(sapply)
function (X, FUN, ..., simplify = TRUE, USE.NAMES = TRUE)
NULL
sapply(mtcars, mean, trim = .5)
mpg cyl disp hp drat wt qsec vs am gear
19.200 6.000 196.300 123.000 3.695 3.325 17.710 0.000 0.000 4.000
carb
2.000
Comme vous pouvez le voir, j'ai passé trim = .5
Bien qu'il ne soit pas spécifié comme argument formel de la fonction sapply
.
(notez que cet exemple est trivial, vous pouvez utiliser sapply(mtcars, median)
pour obtenir le même résultat)