1. Učit se
  2. /
  3. Kurzy
  4. /
  5. Efektivní kód v R

Connected

cvičení

Měření času – předalokace

V předchozím cvičení trvalo rozrůstání vektoru přibližně 2 sekundy. Jak dlouho to trvá, když vektor předalokujeme? Funkce pre_allocate() je definovaná níže.

n <- 30000
# Rychlý kód
pre_allocate <- function(n) {
    x <- numeric(n) # Předalokace
    for(i in 1:n) 
        x[i] <- rnorm(1)
    x
}

Pokyny

100 XP

Funkce pre_allocate() je dostupná v tvém pracovním prostředí.

  • Pomocí system.time() zjisti, jak dlouho trvá spuštění pre_allocate(n). Trik s <- použij k uložení výsledku do objektu res_allocate.