Chapitre 6. Programmation en R
279
• objdump : affiche de l’information sur les fichiers objets (ex : objdump -x
random.dll) ;
• ldd : affiche les biblioth` eques partag´ ees n´ ecessaires (ex : ldd random.dll).
Les fonctions suivantes s’utilisent dans R :
• getLoadedDLLs() : affiche une liste de toutes les DLLs charg´ ees dans la
session courante (ex : getLoadedDLLs()) ;
• is.loaded() : v´ erifie si une librairie a ´ et´ e charg´ ee (ex. : is.loaded(random
.dll), ou, sous Linux, essayez dyn.load(paste(.Library,"/../modules
/lapack.so",sep="")) ; is.loaded("zhpevx")).
SECTION 6.6
† D´ ebogage de fonctions
Nous allons pr´ esenter dans cette section diverses options qui s’offrent `
a
vous pour d´ eboguer une fonction afin d’y rep´ erer une erreur. L’erreur pourrait
se trouver soit dans le code R, soit dans un code C/C++ ou Fortran qui serait
appel´ e par votre fonction R.
Renvoi
Vous pourriez consulter avec profit la page http://www.stats.uwo.
ca/faculty/murdoch/software/debuggingR.
6.6.1 D´ ebogage de fonctions en R pur
Nous pr´ esentons quelques fonctions de d´ ebogage, tr` es utiles lors de l’´ ecriture
de code R.
La fonction browser()
Une fonction de debogage qui peut se r´ ev´ eler utile lorsque l’on programme
dans R est la fonction browser(). En effet, il vous suffit d’ins´ erer l’instruction
browser() dans le code source de votre fonction et, quand vous l’ex´ ecuterez,
le programme s’arrˆ etera `
a l’endroit o` u vous avez ins´ er´ e cette ligne.
Voici un exemple montrant l’utilisation de browser() dans une fonction
nomm´ ee mc() qui calcule l’estimateur des moindres carr´ es des param` etres inconnus dans un mod` ele de r´ egression lin´ eaire simple (voir le chapitre 12 pour
plus de d´ etails).
1 mc <- function (X ,Y , intercept = TRUE ) {
2
X <- as . matrix (X)
3
Y <- as . matrix (Y)
4
plot (X ,Y)
279
• objdump : affiche de l’information sur les fichiers objets (ex : objdump -x
random.dll) ;
• ldd : affiche les biblioth` eques partag´ ees n´ ecessaires (ex : ldd random.dll).
Les fonctions suivantes s’utilisent dans R :
• getLoadedDLLs() : affiche une liste de toutes les DLLs charg´ ees dans la
session courante (ex : getLoadedDLLs()) ;
• is.loaded() : v´ erifie si une librairie a ´ et´ e charg´ ee (ex. : is.loaded(random
.dll), ou, sous Linux, essayez dyn.load(paste(.Library,"/../modules
/lapack.so",sep="")) ; is.loaded("zhpevx")).
SECTION 6.6
† D´ ebogage de fonctions
Nous allons pr´ esenter dans cette section diverses options qui s’offrent `
a
vous pour d´ eboguer une fonction afin d’y rep´ erer une erreur. L’erreur pourrait
se trouver soit dans le code R, soit dans un code C/C++ ou Fortran qui serait
appel´ e par votre fonction R.
Renvoi
Vous pourriez consulter avec profit la page http://www.stats.uwo.
ca/faculty/murdoch/software/debuggingR.
6.6.1 D´ ebogage de fonctions en R pur
Nous pr´ esentons quelques fonctions de d´ ebogage, tr` es utiles lors de l’´ ecriture
de code R.
La fonction browser()
Une fonction de debogage qui peut se r´ ev´ eler utile lorsque l’on programme
dans R est la fonction browser(). En effet, il vous suffit d’ins´ erer l’instruction
browser() dans le code source de votre fonction et, quand vous l’ex´ ecuterez,
le programme s’arrˆ etera `
a l’endroit o` u vous avez ins´ er´ e cette ligne.
Voici un exemple montrant l’utilisation de browser() dans une fonction
nomm´ ee mc() qui calcule l’estimateur des moindres carr´ es des param` etres inconnus dans un mod` ele de r´ egression lin´ eaire simple (voir le chapitre 12 pour
plus de d´ etails).
1 mc <- function (X ,Y , intercept = TRUE ) {
2
X <- as . matrix (X)
3
Y <- as . matrix (Y)
4
plot (X ,Y)
