124
Le logiciel R - Maˆ ıtriser le langage
3.7.1 Instructions de condition
• Instruction switch() (aiguiller)
Elle s’utilise de la fa¸ con suivante :
switch(,=,=, etc.)
Dans l’instruction ci-dessus, est soit un nombre, soit une
chaˆ ıne de caract` eres. Cette instruction renvoie si vaut
, si vaut , etc. Si
n’est ´ egal `
a aucun des , la fonction switch() renvoie alors NULL.
En voici un exemple d’utilisation :
> x <- rcauchy(10) # Génération de dix nombres aléatoires issus
# d’une loi de Cauchy.
> entree <- "moyenne"
> switch(entree,moyenne = mean(x),mediane = median(x))
[1] 3.842243
> entree <- "mediane"
> switch(entree,moyenne = mean(x),mediane = median(x))
[1] 0.6206986
> entree <- "variance"
> switch(entree,moyenne = mean(x),mediane = median(x))
Remarque
Il est possible de fournir une seule valeur non nomm´ ee, c’est-` a-dire un
sans le = associ´ e. Cela aura pour effet de renvoyer
cette valeur ` a la place de NULL lorsque la valeur du param` etre EXPR ne sera
´ egale ` a aucun des cas.
> switch(EXPR = "b", a=4, b=2:3, "Sinon: rien")
[1] 2 3
> switch(EXPR = "QQ", a=4, b=2:3, "Sinon: rien")
[1] "Sinon: rien"
• Instructions if et else (si et sinon)
L’instruction conditionnelle if est utilis´ ee sous les deux formes suivantes :
if ()
ou
if () else
Le param` etre doit prendre l’une des valeurs TRUE ou FALSE. Notez que
est d’abord transform´ e en as.logical(), ce qui autorise l’uti-
Précédent

- 158/701

Suivant