MulaiMulai sekarang secara gratis

Menghitung jumlah per baris

Bottleneck kedua yang teridentifikasi adalah menghitung jumlah per baris.

total <- apply(d, 1, sum)

Pada latihan sebelumnya Anda mengubah objek dasar menjadi matriks. Ini membuat operasi apply di atas menjadi tiga kali lebih cepat. Namun masih ada satu pengoptimalan lagi yang dapat Anda gunakan — ganti apply() dengan rowSums().

Latihan ini adalah bagian dari kursus

Menulis Kode R yang Efisien

Lihat Kursus

Petunjuk latihan

  • Lengkapi fungsi r_sum() menggunakan rowSums().
  • Gunakan fungsi microbenchmark() untuk membandingkan waktu eksekusi app() dan r_sum().

Latihan interaktif praktis

Cobalah latihan ini dengan menyelesaikan kode contoh berikut.

# Example data
rolls

# Define the previous solution 
app <- function(x) {
    apply(x, 1, sum)
}

# Define the new solution
r_sum <- function(x) {
    ___(x)
}

# Compare the methods
microbenchmark(
    app_sol = app(rolls),
    r_sum_sol = ___
)
Edit dan Jalankan Kode