시작하기무료로 시작하기

수렴 감지하기

이전 연습 문제에서 변수들을 반복 처리하신 점 훌륭해요! 그런데 몇 번의 반복이 필요할까요? 새 반복에서 대치값이 더 이상 변하지 않으면 멈출 수 있어요.

이제 코드를 확장해 연속된 반복에서 대치된 변수들 간의 차이를 계산해 보겠습니다. 이를 위해 아래와 같이 정의된 평균 절대 백분율 변화 함수(Mean Absolute Percentage Change)를 사용할 거예요:

mapc <- function(a, b) {
  mean(abs(b - a) / a, na.rm = TRUE)
}

mapc()ba와 얼마나 다른지를 나타내는 단일 숫자를 출력해요. 이를 사용해 반복(iteration)마다 대치된 변수들이 얼마나 변하는지 확인합니다. 이를 바탕으로 몇 번의 반복이 필요한지 판단할 거예요!

불리언 마스크 missing_air_tempmissing_humidity, 그리고 hotdeck으로 초기화된 tao_imp 데이터가 준비되어 있어요.

이 연습은 강의의 일부입니다

R에서 대치(Imputation)로 결측치 다루기

강의 보기

실습형 인터랙티브 연습

이 예제를 이 샘플 코드를 완성하여 풀어보세요.

diff_air_temp <- ___
diff_humidity <- ___

for (i in 1:5) {
  # Assign the outcome of the previous iteration (or initialization) to prev_iter
  prev_iter <- ___
  # Impute air_temp and humidity at originally missing locations
  tao_imp$air_temp[missing_air_temp] <- NA
  tao_imp <- impute_lm(tao_imp, air_temp ~ year + latitude + sea_surface_temp + humidity)
  tao_imp$humidity[missing_humidity] <- NA
  tao_imp <- impute_lm(tao_imp, humidity ~ year + latitude + sea_surface_temp + air_temp)

  
  
}
코드 편집 및 실행