Comment utiliser la fonction get() dans R pour récupérer des objets nommés



Vous pouvez utiliser la fonction get() dans R pour récupérer des objets nommés.

Voici les trois fonctions get() les plus courantes dans R :

1. get() – Récupère un objet

get("my_object")

2. get0() – Récupère un objet, en utilisant un message d’erreur personnalisé s’il n’est pas trouvé

get0("my_object", ifnotfound="does not exist")

3. mget() – Récupérer plusieurs objets

mget(c("my_object1", "my_object2", "my_object3"))

Les exemples suivants montrent comment utiliser chaque fonction dans la pratique.

Exemple 1 : utilisez get() pour récupérer un objet

Le code suivant montre comment utiliser la fonction get() pour récupérer un objet name :

#define vector of values
data1 <- c(4, 5, 5, 6, 13, 18, 19, 15, 12)

#get vector of values
get("data1")

[1]  4  5  5  6 13 18 19 15 12

Si l’objet nommé n’existe pas, cette fonction renvoie une erreur :

#define vector of values
data1 <- c(4, 5, 5, 6, 13, 18, 19, 15, 12)

#attempt to get vector of values
get("data0")

Error in get("data0") : object 'data0' not found

Exemple 2 : utilisez get0() pour récupérer un objet, à l’aide d’un message d’erreur personnalisé

Nous pouvons également utiliser la fonction get0() pour récupérer un objet nommé dans R et utiliser un message d’erreur personnalisé si l’objet n’est pas trouvé :

#define vector of values
data1 <- c(4, 5, 5, 6, 13, 18, 19, 15, 12)

#attempt to get vector of values
get0("data0", ifnotfound="does not exist")

[1] "does not exist"

Puisque l’objet nommé « data0 » n’existe pas, la fonction get0() renvoie le message d’erreur personnalisé que nous avons créé.

Exemple 3 : utilisez mget() pour récupérer plusieurs objets

Nous pouvons utiliser la fonction mget() pour récupérer plusieurs objets nommés dans R :

#define three vectors
data1 <- c(4, 5, 5, 6, 13, 18, 19, 15, 12)
data2 <- c("A", "B", "C", "D")
data3 <- c(10, 20, 25, 30, 35)

#get all three vectors
mget(c("data1", "data2", "data3"))

$data1
[1]  4  5  5  6 13 18 19 15 12

$data2
[1] "A" "B" "C" "D"

$data3
[1] 10 20 25 30 35

Notez que si nous essayions simplement d’utiliser la fonction get() , seul le premier objet nommé serait renvoyé :

#define three vectors
data1 <- c(4, 5, 5, 6, 13, 18, 19, 15, 12)
data2 <- c("A", "B", "C", "D")
data3 <- c(10, 20, 25, 30, 35)

#attempt to get all three vectors
mget(c("data1", "data2", "data3"))

[1]  4  5  5  6 13 18 19 15 12

Ressources additionnelles

Les didacticiels suivants expliquent comment utiliser d’autres fonctions courantes dans R :

Comment utiliser la fonction c() dans R
Comment utiliser la fonction sprintf() dans R
Comment utiliser la fonction replace() dans R

Ajouter un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *