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
}
Diese Übung ist Teil des Kurses
Writing Efficient R Code
Anleitung zur Übung
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
.
Interaktive Übung
Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.
# Use <- with system.time() to store the result as res_allocate
n <- 30000
system.time(___ <- ___)