Cara mengonversi daftar ke vektor di r (dengan contoh)
Anda dapat menggunakan salah satu metode berikut untuk mengonversi daftar menjadi vektor di R:
#use unlist() function new_vector <- unlist(my_list, use. names = FALSE ) #use flatten_*() function from purrr library new_vector <- purrr::flatten(my_list)
Contoh berikut menunjukkan cara menggunakan masing-masing metode tersebut dalam praktik dengan daftar berikut:
#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
Contoh 1: Ubah Daftar menjadi Vektor Menggunakan Fungsi unlist()
Kode berikut menunjukkan cara mengonversi daftar menjadi vektor menggunakan fungsi 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
Perhatikan bahwa Anda dapat menentukan use.names = FALSE untuk menghapus nama dari vektor:
#convert list to vector new_vector <- unlist(my_list, use. names = FALSE ) #display vector new_vector [1] 1 2 3 4 5 6
Contoh 2: Ubah daftar menjadi vektor menggunakan fungsi flatten_*
Kode berikut menunjukkan cara mengonversi daftar menjadi vektor menggunakan keluarga fungsi flatten_* dari paket purrr :
library (purrr) #convert list to vector new_vector <- flatten_dbl(my_list) #display vector new_vector [1] 1 2 3 4 5 6
Fungsi flatten_dbl() secara khusus mengubah daftar menjadi vektor bertipe ganda.
Perhatikan bahwa kita dapat menggunakan flatten_chr() untuk mengubah daftar karakter menjadi vektor karakter:
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"
Lihat halaman ini untuk daftar lengkap keluarga fungsi flatten_*.
Catatan: Jika Anda bekerja dengan daftar yang sangat panjang, fungsi flatten_* akan bekerja lebih cepat daripada fungsi R base unlist().
Sumber daya tambahan
Cara mengonversi daftar ke bingkai data di R
Cara mengubah matriks menjadi vektor di R
Bagaimana cara mengubah kolom bingkai data menjadi vektor di R