close
close

sapply lapply in r

2 min read 03-10-2024
sapply lapply in r

R adalah bahasa pemrograman yang sangat populer untuk analisis data dan statistik. Di dalam R, terdapat beberapa fungsi yang memudahkan kita dalam melakukan operasi pada elemen-elemen dalam vektor atau list, di antaranya adalah sapply dan lapply. Artikel ini akan menjelaskan perbedaan, penggunaan, serta contoh yang bermanfaat dalam aplikasi sehari-hari.

Apa itu sapply dan lapply?

Sebelum kita membahas lebih lanjut, mari kita lihat kode dasar penggunaan kedua fungsi ini.

Kode Contoh

# Contoh list
data_list <- list(a = 1:5, b = 6:10, c = 11:15)

# Menggunakan lapply
result_lapply <- lapply(data_list, sum)

# Menggunakan sapply
result_sapply <- sapply(data_list, sum)

Penjelasan Kode

  • data_list adalah sebuah list yang berisi tiga elemen, masing-masing berisi vektor dari angka.
  • lapply(data_list, sum) mengaplikasikan fungsi sum ke setiap elemen dalam data_list dan mengembalikan hasil dalam bentuk list.
  • sapply(data_list, sum) juga mengaplikasikan fungsi sum, tetapi hasilnya akan berupa vektor jika hasil dari sum adalah vektor satu dimensi.

Perbedaan Antara sapply dan lapply

Meskipun keduanya memiliki fungsi yang sama dalam hal menerapkan fungsi pada setiap elemen, hasil yang mereka kembalikan berbeda:

  • lapply: Hasil yang dikembalikan selalu berupa list, terlepas dari dimensi output dari fungsi yang diterapkan. Ini cocok digunakan ketika Anda ingin menjaga struktur data asli.

  • sapply: Ini adalah versi lapply yang lebih sederhana dan melakukan konversi hasil ke dalam bentuk vektor jika memungkinkan. Jika hasilnya lebih dari satu dimensi, maka akan tetap dikembalikan dalam bentuk list.

Contoh Perbandingan

Mari kita lihat bagaimana perbedaan hasil dari kedua fungsi tersebut dalam sebuah contoh.

# Menggunakan lapply
result_lapply <- lapply(data_list, function(x) x * 2)
print(result_lapply)

# Menggunakan sapply
result_sapply <- sapply(data_list, function(x) x * 2)
print(result_sapply)

Output lapply:

$a
[1] 2 4 6 8 10

$b
[1] 12 14 16 18 20

$c
[1] 22 24 26 28 30

Output sapply:

     a  b  c
[1,]  2 12 22
[2,]  4 14 24
[3,]  6 16 26
[4,]  8 18 28
[5,] 10 20 30

Kapan Menggunakan sapply atau lapply?

  • Gunakan lapply ketika Anda ingin mengembalikan hasil dalam bentuk list, terutama jika Anda bekerja dengan data yang lebih kompleks atau multidimensional.
  • Gunakan sapply ketika Anda ingin hasil dalam bentuk vektor yang lebih sederhana, serta ketika Anda yakin bahwa hasil dari fungsi yang diterapkan adalah satu dimensi.

Kesimpulan

lapply dan sapply adalah alat yang sangat berguna dalam pemrograman R untuk mengaplikasikan fungsi pada koleksi data seperti list atau vektor. Memahami kapan dan bagaimana menggunakan kedua fungsi ini akan sangat membantu dalam proses analisis data Anda.

Sumber Daya Berguna

Dengan memahami fungsi-fungsi ini, Anda dapat mengoptimalkan kode R Anda untuk analisis data yang lebih efisien dan efektif. Selamat mencoba!