J'ai une fonction commeComment passer ensemble de paramètres inconnus à la fonction R
myfunc <- function(x, y=x){
x+y
}
qui par défaut (évidemment) la valeur de y à x si y est pas passé à la fonction.
Maintenant, j'utilise optparse
pour lire certains arguments de ligne de commande à un script qui appelle myfunc
.
# myscript.R
option_list <- list(
make_option(c("--x"), type="numeric"),
make_option(c("--y"), type="numeric")
)
print(myfunc(opt$x, opt$y))
Le problème avec le code ci-dessus est, il oblige l'utilisateur à fournir une valeur pour y (sinon une erreur sera levée). Au lieu de cela, je voudrais appeler myfunc
en utilisant tous et seulement les paramètres fournis par l'utilisateur. Comment puis-je accomplir cela de la manière la plus élégante, la plus évolutive, la plus généralisable? Remarque - pour ceux qui connaissent Python, je pense que je veux faire quelque chose de similaire au déballage de dictionnaire en utilisant les valeurs opt
.
Cela dépend en quelque sorte de ce que vous allez faire avec ces paramètres. Pour une sommation simple, '...' suffirait, où vous collecterez les arguments passés à '...' et les écraserez. –