Jak przekonwertować listę na wektor w r (z przykładami)


Możesz użyć dowolnej z poniższych metod, aby przekonwertować listę na wektor w R:

 #use unlist() function
new_vector <- unlist(my_list, use. names = FALSE )

#use flatten_*() function from purrr library
new_vector <- purrr::flatten(my_list)

Poniższe przykłady pokazują, jak zastosować każdą z tych metod w praktyce, wraz z poniższą listą:

 #create list
my_list <- list(A = c(1, 2, 3),
                B = c(4, 5),
                C = 6)

#display list
my_list

$A
[1] 1 2 3

$B
[1] 4 5

$C
[1] 6

Przykład 1: Konwersja listy na wektor za pomocą funkcji unlist().

Poniższy kod pokazuje, jak przekonwertować listę na wektor za pomocą funkcji unlist() :

 #convert list to vector
new_vector <- unlist(my_list)

#display vector
new_vector

A1 A2 A3 B1 B2 C 
 1 2 3 4 5 6 

Pamiętaj, że możesz podać use.names = FALSE , aby usunąć nazwy z wektora:

 #convert list to vector
new_vector <- unlist(my_list, use. names = FALSE )

#display vector
new_vector

[1] 1 2 3 4 5 6

Przykład 2: Konwertuj listę na wektor za pomocą funkcji flatten_*

Poniższy kod pokazuje, jak przekonwertować listę na wektor przy użyciu rodziny funkcji flatten_* z pakietu purrr :

 library (purrr)

#convert list to vector
new_vector <- flatten_dbl(my_list)

#display vector
new_vector

[1] 1 2 3 4 5 6

Funkcja flatten_dbl() w szczególności konwertuje listę na wektor typu double.

Zauważ, że moglibyśmy użyć flatten_chr() do przekształcenia listy znaków w wektor znakowy:

 library (purrr) 

#define character list
my_char_list <- list(A = c('a', 'b', 'c'),
                     B = c('d', 'e'),
                     C = 'f')

#convert character list to character vector
new_char_vector <- flatten_chr(my_char_list)

#display vector
new_char_vector

[1] "a" "b" "c" "d" "e" "f"

Na tej stronie znajduje się pełna lista funkcji flatten_*.

Uwaga: Jeśli pracujesz z wyjątkowo długą listą, funkcje flatten_* będą działać szybciej niż podstawowa funkcja R unlist().

Dodatkowe zasoby

Jak przekonwertować listę na ramkę danych w R
Jak przekonwertować macierz na wektor w R
Jak przekonwertować kolumnę ramki danych na wektor w R

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *