R - Senarai: Panduan Kawan Anda untuk Organisasi Data

Hai sana, para pemrogram R yang sedang belajar! Hari ini, kita akan menjelajahi salah satutruktur data yang paling multifungsi di R: senarai. Bayangkan senarai sebagai pisau瑞士军刀 dalam pemrograman R – mereka dapat menangkap hampir segala sesuatu! Ayo masuk dan bersama-sama kita membongkar misteri senarai.

R - Lists

Membuat Senarai

Senarai di R adalah seperti wadah ajaib yang dapat menangkap jenis data yang berbeda. Bayangkan Anda sedang mengemas untuk liburan – Anda mungkin memiliki pakaian, buku, dan peralatan mandi semua dalam satu tas. Itu tepat apa yang dilakukan senarai di R!

mari membuat senarai pertama kita:

my_first_list <- list("apple", 42, TRUE, c(1, 2, 3))
print(my_first_list)

Ketika Anda menjalankan kode ini, Anda akan melihat:

[[1]]
[1] "apple"

[[2]]
[1] 42

[[3]]
[1] TRUE

[[4]]
[1] 1 2 3

Apakah itu menarik? Kita baru saja membuat senarai yang mengandung string, nomor, nilai logis, dan bahkan vektor! Itu seperti memiliki lemari tempat Anda dapat meletakkan apa saja yang Anda inginkan.

Menamai Elemen Senarai

Sekarang, mari kita membuat senarai kita sedikit lebih terorganisir. Kita dapat memberikan nama untuk setiap elemen dalam senarai kita, seperti memberi label pada kompartemen dalam tas Anda:

labeled_list <- list(fruit = "banana", number = 7, is_fun = TRUE, scores = c(85, 90, 95))
print(labeled_list)

Ini akan mengeluarkan:

$fruit
[1] "banana"

$number
[1] 7

$is_fun
[1] TRUE

$scores
[1] 85 90 95

Lihat bagaimana setiap elemen sekarang memiliki nama? Hal ini membuat senarai kita lebih mudah untuk dinavigasi!

Mengakses Elemen Senarai

Mengakses elemen dalam senarai adalah seperti mencapai ke dalam tas Anda untuk mengambil tepat apa yang Anda butuhkan. Ada beberapa cara untuk melakukan ini:

  1. Menggunakan kurung siku []:

    print(labeled_list[1])  # Mengembalikan senarai dengan elemen pertama
  2. Menggunakan kurung siku ganda [[]]:

    print(labeled_list[[1]])  # Mengembalikan nilai actual dari elemen pertama
  3. Menggunakan operator $ (untuk elemen yang dinamai):

    print(labeled_list$fruit)  # Mengembalikan nilai yang terkait dengan "fruit"

mari coba ini:

print(labeled_list[1])
print(labeled_list[[1]])
print(labeled_list$fruit)

Anda akan melihat:

$fruit
[1] "banana"

[1] "banana"

[1] "banana"

Perhatikan perbedaan halus? Metode pertama mengembalikan senarai, sedangkan yang lain mengembalikan nilai actual.

Mengubah Elemen Senarai

Senarai bukanlah batu – kita dapat mengubahnya! mari perbarui beberapa elemen dalam senarai kita:

labeled_list$fruit <- "mango"
labeled_list[[2]] <- 10
labeled_list$scores[2] <- 92
print(labeled_list)

Setelah menjalankan ini, Anda akan melihat:

$fruit
[1] "mango"

$number
[1] 10

$is_fun
[1] TRUE

$scores
[1] 85 92 95

Kita telah mengubah buah, memperbarui nomor, dan bahkan mengubah elemen dalam vektor skor!

Menggabungkan Senarai

kadang-kadang, Anda mungkin ingin menggabungkan dua senarai. Itu seperti menggabungkan dua tas menjadi tas yang lebih besar:

list1 <- list(a = 1, b = 2)
list2 <- list(c = 3, d = 4)
merged_list <- c(list1, list2)
print(merged_list)

Ini akan memberikan Anda:

$a
[1] 1

$b
[1] 2

$c
[1] 3

$d
[1] 4

Voila! Kita telah menciptakan senarai baru, yang lebih besar, dari dua senarai kecil kita.

Mengkonversi Senarai ke Vektor

kadang-kadang, Anda mungkin ingin meratakan senarai Anda menjadi vektor sederhana. Itu seperti membongkar tas Anda dan menata semua halnya di tempat tidur:

my_list <- list(1, 2, 3, 4)
my_vector <- unlist(my_list)
print(my_vector)

Ini akan mengeluarkan:

[1] 1 2 3 4

Senarai kita telah ditransformasi menjadi vektor sederhana!

Tabel Metode Senarai

Berikut adalah tabel metode senarai umum di R:

Metode Deskripsi Contoh
list() Membuat senarai baru list(1, "a", TRUE)
length() Mendapatkan jumlah elemen dalam senarai length(my_list)
names() Mendapatkan atau mengatur nama elemen senarai names(my_list) <- c("a", "b", "c")
append() Menambahkan elemen ke senarai append(my_list, list(d = 4))
unlist() Mengkonversi senarai ke vektor unlist(my_list)
lapply() Mengaplikasikan fungsi ke semua elemen senarai lapply(my_list, sqrt)

Dan begitu saja, teman-teman! Kita telah berpergian melalui dunia senarai R, dari pembuatan hingga manipulasi dan lebih jauh lagi. Ingat, latihan membuat sempurna, jadi jangan takut untuk mencoba konsep ini. Senarai sangat kuat dan fleksibel, dan menguasai mereka akan membuat petualangan pemrograman R Anda menjadi lebih menarik!

Selamat pemrograman, dan semoga senarai Anda selalu terorganisir dan struktur data Anda kokoh!

Credits: Image by storyset