L’environnement R et la portée des objets

Lorsque l’on manipule des objets, il est très important que l’on définisse la portée de ces derniers, de bien structurer le code et procurer une meilleure lisibilité. À cette fin, R utilise ce qu’on appelle environnement, qui sert à définir la portée d’un objet. Ce sont en quelque sorte des champs de stockage d’objets R (variables ou fonctions qui ont des portées prédéfinies, etc.).

Ainsi, l’environnement global, qu’on appelle R_GlobalEnv ou .GlobalEnv, est l’environnement le plus vaste ayant la plus grande portée. C’est celui dans lequel l’on crée des objets par défaut :

images/04EP51.png

On remarque dans le code ci-dessus que ni x ni n ne figurent dans la liste des variables. En effet, lorsqu’une fonction est appelée, elle crée en son sein son propre environnement et ls() sans argument n’affiche que les variables, ou de manière plus générale des objets, contenus dans l’environnement courant, c’est-à-dire dans R_GlobalEnv.

Mais l’intérêt de ces objets ne se limite pas à leur exploration, on peut créer son propre environnement avec new.env() et y loger des variables ou des objets avec la fonction assign(), ou procéder avec le symbole dollar $ :

images/04EP52.png

Là encore, on remarque que mon.env() est un sous-environnement dans l’environnement global, car évidemment un environnement...

Pour consulter la suite, découvrez le livre suivant :
couv_RISTATR.png
60-signet.svg
En version papier
20-ecran_lettre.svg
En version numérique
41-logo_abonnement.svg
En illimité avec l'abonnement ENI
130-boutique.svg
Sur la boutique officielle ENI
Précédent
Les fonctions
Suivant
Optimisation du code