Je me suis retrouvé dans une situation où j'ai besoin de prendre tous les arguments supplémentaires passés à une fonction R et de les rouler dans un objet pour une utilisation ultérieure. Je pensais que le previous question about ellipses dans les fonctions m'aiderait, mais je n'arrive toujours pas à comprendre comment faire cela. Voici un exemple très simple de ce que je voudrais faire:R: utilisation d'une liste pour les arguments de type ellipse
newmean <- function(X, ...){
args <- as.list(substitute(list(...)))[-1L]
return(mean(X, args))
}
J'ai essayé un certain nombre de différentes formulations de args dans l'exemple ci-dessus et essayé dans la non-inscription args retour d'appel. Mais je ne peux pas faire ce travail. Des conseils?
Je me rends compte que je pouvais le faire:
newmean <- function(X, ...){
return(mean(X, ...))
}
Mais je dois avoir les arguments ... dans un objet que je peux sérialisation et lire dans une autre machine.
je complètement mal compris votre question donc je supprimer ma réponse. Une chose à ajouter - utilisez le hack 'substitute [-1L]' seulement quand c'est nécessaire, si vous avez besoin de valeurs seulement alors 'list (...)' est suffisant, si vous voulez passer des arguments plus loin, passez comme '...' . – Marek