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