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 fungsisum
ke setiap elemen dalamdata_list
dan mengembalikan hasil dalam bentuk list.sapply(data_list, sum)
juga mengaplikasikan fungsisum
, tetapi hasilnya akan berupa vektor jika hasil darisum
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 versilapply
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!