안녕하세요, 여러분. 지난 시간 다뤄본 결측치 확인과 삭제 방법은 잘 보고 오셨죠?
이번에는 결측치를 대치하는 방법에 대해서 학습하겠습니다.
다음 시간 기출문제를 풀어보기 위해서 반드시 알아두셔야 합니다.
만약 R 기초를 아예 모르시는 분들은 블로그에 온라인 강의가 있으니 듣고 오시면 좋을 것 같습니다. :-)
1) 결측값 처리 방법 - 평균 대치법(Mean Imputation)
평균 대치법이란 결측값을 데이터의 평균, 중위수 등으로 대체하는 방법입니다.
대체하는 방법 중 가장 많이 쓰이는 방법입니다.
두 가지 방식으로 대치하겠습니다. 사용된 데이터는 R 내장 데이터인 airquality입니다.
Ozone 변수와 Solar.R 변수에 각각 결측치가 있는 것을 확인할 수 있습니다.
ifelse 조건문을 활용하여 Solar.R 데이터의 결측값을 평균값으로 대체하겠습니다.
먼저, 평균값을 확인하기 위해서 Solar.R 변수의 평균을 구했습니다. 185.9315값이 나왔습니다.
*na.rm=TRUE 옵션을 설정해야 결측치를 제외하고 연산을 할 수 있습니다.
head 함수로 상위 6행을 반환하니 5, 6 행의 값은 결측치인 것을 확인할 수 있습니다.
*ifelse(조건식, 참값, 거짓값) 조건식이 참이면 참값, 거짓이면 거짓값을 활용하여 위와 같이 코드를 작성합니다.
프로그래밍의 조건문에 익숙하지 않은 분들을 위해 다음과 같이 해석하겠습니다.
***ifelse
조건 : is.na(airquality$Solar.R) - airquality 데이터의 Solar.R 변수 값 중 결측치가 있다면,
참값 : mean(airquality$Solar.R, na.rm=T) - airquality 데이터의 Solar.R 변수의 결측치를 제외한 평균값을 채워넣고
거짓값: airquality$Solar.R - 없다면 그대로 값을 채워넣습니다.
익숙하지 않은 분들은 하나하나 차근차근 문법을 해석해서 꼭 코드로 직접 작성해보세요.
다시 head()함수를 통해서 반환된 값을 보면 평균값으로 잘 대체된 것을 확인할 수 있습니다.
결측치의 확인, 삭제, 대체의 기본을 모두 배워봤습니다.
데이터가 복잡해지면 데이터 확인과 전처리 과정에서 복잡해지는 것은 당연하겠지만 기본 문법과 원리를 이해하셨다면 결측치에 관한 문제는 해결할 수 있습니다.
다음 시간에는 배운 것을 토대로 기출문제를 함께 풀어보고 대비해보겠습니다. :-)
문의사항 및 강의문의는 댓글 및 bigdataleader@naver.com으로 문의주세요.
[빅데이터분석기사_실기] 4. 이상치 판별 -1 (0) | 2021.11.13 |
---|---|
[빅데이터분석기사_실기] 3. 결측치 처리/기출문제 풀이 (0) | 2021.11.12 |
[빅데이터분석기사_실기] 1. 결측치 처리 (0) | 2021.11.10 |
빅데이터분석기사 실기 대비 강의 및 자료 (0) | 2021.11.07 |
빅데이터분석,R프로그래밍으로시작하기_책 출판/무료 동영상/무료 학습자료 배포 (0) | 2021.02.05 |