J'écris le code R où j'aimerais pouvoir exécuter en mode "non-débogage" ou "débogage". Sous le mode de débogage, j'aimerais que le code imprimer des informations d'exécution. P>
Dans d'autres langues, j'aurais généralement une sorte de fonction d'impression qui ne fait que si un drapeau est allumé (soit pour la compilation ou l'exécution). P>
Par exemple, je peux utiliser #IFDEF DEBUG (dans le temps de compilation) ou définir un niveau de débogage au moment de l'exécution. P>
Quel serait le moyen équivalent de faire cela dans R? p>
5 Réponses :
Même chose, moins le préprocesseur: p>
() code> valeur) li>
- Insérer un code conditionnel qui teste la variable li>
- fonctionne avec vos fonctions (ajout
..., verbose = options (myverbose)) code>, dans vos packages, etc. pp li>
- Je l'ai également utilisé dans les scripts R (conduits par Littler ) à l'aide du cran package getopt pour prendre une option de ligne de commande
- verbose code > ou - débogage code>. li>
ul> Cela pourrait également valoir la peine d'être consulté sur la classe verbose code> dans le r.utils package, qui vous permet de contrôler très fin pour l'impression d'informations d'exécution de différentes sortes. P>
Une version légèrement fantastique de la réponse de Dirk:
set_debug_mode(TRUE) #turn debug mode on set_debug_mode(FALSE) #turn debug mode off
Une autre possibilité est log4r P>
Pour citer cette page: P>
log4r: un système de journalisation simple pour R, basé sur log4j p>
LOGR4 fournit un système de journalisation orienté objet qui utilise une API grossièrement équivalent à log4j et à ses variantes connexes. P> blockQuote>
Extension du code de Richie:
En outre, vous pouvez vérifier le débogage de la variable de l'environnement système pour l'initialisation: P>
ifdebug(...do something here...)