Come convertire un vettore in una lista in r (con esempi)


Puoi utilizzare la funzione as.list() per convertire rapidamente un vettore in una lista in R.

Questa funzione utilizza la seguente sintassi di base:

 my_list <- as. list (my_vector)

L’esempio seguente mostra come utilizzare questa funzione nella pratica.

Esempio: converti il vettore in una lista in R

Il codice seguente mostra come utilizzare la funzione as.list() per convertire un vettore in un elenco:

 #createvector
my_vector <- c('A', 'B', 'C', 'D')

#convert vector to list
my_list <- as. list (my_vector)

#view list
my_list

[[1]]
[1] “A”

[[2]]
[1] “B”

[[3]]
[1 C"

[[4]]
[1] “D”

Possiamo usare la funzione class() per confermare che il nuovo oggetto ha una classe list:

 #view class of list
class(my_list)

[1] "list"

Bonus: aggiungi un vettore all’elenco

Potresti pensare di poter utilizzare la seguente sintassi per aggiungere gli elementi di un vettore a una lista in R:

 #attempt to create list with 6 elements
some_list <- list('A', 'B', as. list (c('C', 'D', 'E', 'F')))

#view list
some_list

[[1]]
[1] “A”

[[2]]
[1] “B”

[[3]]
[[3]][[1]]
[1 C"

[[3]][[2]]
[1] “D”

[[3]][[3]]
[1] “E”

[[3]][[4]]
[1] “F”

Invece di un elenco di sei elementi, l’elenco ha tre elementi e il terzo elemento ha quattro sottoelementi.

Per aggiungere gli elementi di un vettore ad una lista, è necessario utilizzare il seguente codice:

 #definevector
my_vector <- c('C', 'D', 'E', 'F')

#define first list
list1 <- list('A', 'B')

#convert vector to second list
list2 <- as. list (my_vector)

#create long list by combining first list and second list
list3 <- c(list1, list2)

#view result
list3

[[1]]
[1] “A”

[[2]]
[1] “B”

[[3]]
[1 C"

[[4]]
[1] “D”

[[5]]
[1] “E”

[[6]]
[1] “F”

Il risultato è un elenco di sei elementi.

Risorse addizionali

I seguenti tutorial spiegano come eseguire altre attività comuni in R:

Come convertire una lista in un vettore in R
Come convertire la matrice in vettore in R
Come convertire la colonna del frame di dati in un vettore in R

Aggiungi un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *