1. เรียนรู้
  2. /
  3. Courses
  4. /
  5. 효율적인 R 코드 작성

Connected

Exercises

타이밍 - 벡터 크기 늘리기

R에서 벡터를 점점 키워 가는 방식은 치명적인 실수 중 하나이므로, 반드시 피해야 해요.

아래에 정의된 growing() 함수는 n개의 표준정규 난수를 생성하지만, 매번 요소를 추가할 때마다 벡터의 크기를 키워요!

참고: 표준정규 난수는 평균이 0이고 표준편차가 1인 정규분포에서 추출한 수를 말해요.

n <- 30000
# Slow code
growing <- function(n) {
    x <- NULL
    for(i in 1:n)
        x <- c(x, rnorm(1))
    x
}

คำแนะนำ

100 XP

growing() 함수는 이미 작업 공간에 정의되어 있어요.

  • system.time() 함수를 사용해, growing() 함수로 n = 30000개의 표준정규 난수를 생성하는 데 걸리는 시간을 구하세요. <- 트릭을 사용해 결과를 res_grow라는 벡터에 저장하세요.