Come utilizzare la funzione get() in r per recuperare oggetti denominati
È possibile utilizzare la funzione get() in R per recuperare oggetti denominati.
Ecco le tre funzioni get() più comuni in R:
1. get() – Ottieni un oggetto
get(" my_object ")
2. get0() – Recupera un oggetto, utilizzando un messaggio di errore personalizzato se non trovato
get0(" my_object ", ifnotfound=" does not exist ")
3. mget() – Recupera più oggetti
mget(c(" my_object1 ", " my_object2 ", " my_object3 "))
Gli esempi seguenti mostrano come utilizzare nella pratica ciascuna funzione.
Esempio 1: utilizzare get() per recuperare un oggetto
Il codice seguente mostra come utilizzare la funzione get() per recuperare un oggetto nome:
#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
Se l’oggetto indicato non esiste, questa funzione restituisce un errore:
#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
Esempio 2: utilizzare get0() per recuperare un oggetto, utilizzando un messaggio di errore personalizzato
Possiamo anche utilizzare la funzione get0() per recuperare un oggetto denominato in R e utilizzare un messaggio di errore personalizzato se l’oggetto non viene trovato:
#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”
Poiché l’oggetto denominato “data0” non esiste, la funzione get0() restituisce il messaggio di errore personalizzato che abbiamo creato.
Esempio 3: utilizzare mget() per recuperare più oggetti
Possiamo usare la funzione mget() per recuperare più oggetti con nome in 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
Nota che se provassimo semplicemente a utilizzare la funzione get() , verrebbe restituito solo il primo oggetto nominato:
#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
Risorse addizionali
I seguenti tutorial spiegano come utilizzare altre funzioni comuni in R:
Come utilizzare la funzione c() in R
Come utilizzare la funzione sprintf() in R
Come utilizzare la funzione replace() in R