Pengukuran waktu - pra-alokasi
Pada latihan sebelumnya, menumbuhkan vektor memakan waktu sekitar 2 detik.
Berapa lama waktu yang dibutuhkan jika kita melakukan pra-alokasi vektor? Fungsi pre_allocate() didefinisikan di bawah ini.
n <- 30000
# Fast code
pre_allocate <- function(n) {
x <- numeric(n) # Pre-allocate
for(i in 1:n)
x[i] <- rnorm(1)
x
}
Latihan ini merupakan bagian dari kursus
Menulis Kode R yang Efisien
Instruksi latihan
Fungsi pre_allocate() tersedia di workspace Anda.
- Dengan menggunakan
system.time(), cari berapa lama waktu yang dibutuhkan untuk menjalankanpre_allocate(n). Gunakan trik<-untuk menyimpan hasilnya ke objekres_allocate.
Latihan interaktif langsung praktik
Cobalah latihan ini dengan melengkapi kode contoh ini.
# Use <- with system.time() to store the result as res_allocate
n <- 30000
system.time(___ <- ___)