R에서 목록을 벡터로 변환하는 방법(예제 포함)


다음 방법 중 하나를 사용하여 R에서 목록을 벡터로 변환할 수 있습니다.

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

#use flatten_*() function from purrr library
new_vector <- purrr::flatten(my_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

예제 1: unlist() 함수를 사용하여 목록을 벡터로 변환

다음 코드는 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 

use.names = FALSE를 지정하여 벡터에서 이름을 제거할 수 있습니다.

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

#display vector
new_vector

[1] 1 2 3 4 5 6

예제 2: flatten_* 함수를 사용하여 목록을 벡터로 변환

다음 코드는 purrr 패키지의 flatten_* 함수 계열을 사용하여 목록을 벡터로 변환하는 방법을 보여줍니다.

 library (purrr)

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

#display vector
new_vector

[1] 1 2 3 4 5 6

flatten_dbl() 함수는 구체적으로 목록을 double 유형의 벡터로 변환합니다.

flatten_chr()을 사용하여 문자 목록을 문자 벡터로 변환할 수 있습니다.

 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"

flatten_* 함수 계열의 전체 목록은 이 페이지를 참조하세요.

참고: 매우 긴 목록으로 작업하는 경우 flatten_* 함수는 R 기본 unlist() 함수보다 빠르게 작동합니다.

추가 리소스

R에서 목록을 데이터 프레임으로 변환하는 방법
R에서 행렬을 벡터로 변환하는 방법
R에서 데이터 프레임 열을 벡터로 변환하는 방법

의견을 추가하다

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다