Timings - pre-allocation
In the previous exercise, growing the vector took around 2 seconds.
How long does it take when we pre-allocate the vector? The pre_allocate()
function is defined below.
n <- 30000
# Fast code
pre_allocate <- function(n) {
x <- numeric(n) # Pre-allocate
for(i in 1:n)
x[i] <- rnorm(1)
x
}
Este exercício faz parte do curso
Writing Efficient R Code
Instruções do exercício
The pre_allocate()
function is available in your workspace.
- Using
system.time()
, find how long it takes to runpre_allocate(n)
. Use the<-
trick to store the result in the objectres_allocate
.
Exercício interativo prático
Experimente este exercício completando este código de exemplo.
# Use <- with system.time() to store the result as res_allocate
n <- 30000
system.time(___ <- ___)