
Un petit cadeau pour Noël, une fonction bien “à la R” !
Il est possible de retourner des valeurs “invisibles”. Un exemple valant mieux qu’un long discours :
> invisible(100) > x <- invisible(100) > x [1] 100
invisible()
évite l’impression à l’écran du résultat mais le transmet tout de même en cas d’affectation.
Voilà, c’est tout 🙂
Cela peut-être utile si la fonction imprime une version “user friendly” de la valeur de retour mais renvoie cette dernière dans un format “R friendly”.
> multiplie <- function(x,y) {r = x*y;print(sprintf("Je multiplie %f par %f et ça donne %f",x,y,r)); invisible(r) } > multiplie(2,3) [1] "Je multiplie 2.000000 par 3.000000 et ça donne 6.000000" > x <- multiplie(2,3) [1] "Je multiplie 2.000000 par 3.000000 et ça donne 6.000000" > x [1] 6