1. 학습
  2. /
  3. 강의
  4. /
  5. R에서 대치(Imputation)로 결측치 다루기

Connected

연습 문제

수렴 감지하기

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

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

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

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

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

지침 1/3

undefined XP
    1
    2
    3
  • 해당 변수들의 차이를 저장할 빈 벡터 diff_air_temp와 diff_humidity를 생성하세요.
  • 이전 반복(또는 초기화) 결과인 tao_imp를 변수 prev_iter에 할당하세요.