NHANES 데이터 정제
데이터 정제 과정에서 16세 미만에게는 처치가 제공되지 않았음을 확인했습니다. 우리는 의사가 식단에서 지방이나 칼로리를 줄이도록 조언한 적이 있는지를 나타내는 변수를 ‘영양 상담(처치)’으로 간주하고 있습니다. 이제 16세 초과 환자만 데이터셋에 남기겠습니다.
또한 ggplot2의 기본 설정은 종속 변수에 결측이 있으면 해당 관측값을 삭제한다는 점을 눈치채셨을 거예요. 체중(몸무게)이 결측인 경우를 처리하는 한 가지 방법인 ‘대치(imputation)’는 simputation 패키지로 구현할 수 있습니다. 대치는 결측값을 평균이나 중앙값 같은 요약 통계로 대체하거나, 모델로 예측한 값으로 대체하는 기법입니다.
우리는 impute_median()을 사용할 것이며, 이 함수는 데이터셋과 대치할 변수(또는 그룹별 대치를 위한 식)를 인자로 받습니다. 예를 들어 impute_median(ToothGrowth, len ~ dose)는 변수 len의 결측값을 dose별 len의 중앙값으로 채웁니다. 즉, 투여량이 2.0인 기니피그의 len 값이 결측이면, dose가 2.0인 기니피그들의 len 중앙값으로 채워집니다.
이 연습은 강의의 일부입니다
R로 배우는 실험 설계
연습 안내
filter()를 사용해 16세를 제외하고 16세 초과인 사람만 남겨nhanes_filter를 생성하세요. 나이는ridageyr변수에 저장되어 있습니다.simputation을 로드하세요.impute_median()으로nhanes_filter의bmxwt결측값을riagendr별로 그룹화해 채우세요.nhanes_final$mcq365d에서 값이 9인 관측값을 2로 바꾸어 재코딩하세요.count()로 재코딩이 제대로 되었는지 확인하세요.
실습형 인터랙티브 연습
이 예제를 이 샘플 코드를 완성하여 풀어보세요.
# Filter to keep only those 16+
nhanes_filter <- ___ %>% filter(___)
# Load simputation & impute bmxwt by riagendr
___
nhanes_final <- impute_median(___, ___)
# Recode mcq365d with recode() & examine with count()
nhanes_final$mcq365d <- recode(nhanes_final$mcq365d,
`1` = 1,
`2` = 2,
`9` = ___)
___ %>% ___