본문 바로가기
Big Data/R

[R] 11. 데이터 정제 (3) - 결측치 제외, 대체하기

by nanee_ 2021. 6. 18.
728x90
반응형
SMALL
 

[R] 10. 데이터 정제 (2) - 결측치 제거하기

[R] 9. 데이터 정제 (1) - 결측치 찾기 # 결측치 찾기 - 결측치 의의 : 누락된 값, 비어있는 값 결측치 있으면 함수가 적용되지 않거나 분석 결과가 왜곡되는 결과가 발생한다. 그래서 결측치를 제거

nanee-it.tistory.com

** 위의 내용과 이어지는 포스팅 입니다.

 

 


# 함수의 결측치 제외

 

- 결측치를 제외한 평균

mean(df$score, na.rm = T)

[1] 4

 

rm 은 remove의 약어이고,

t 는 true의 약어이다.

 

 

- 결측치를 제외한 합계

sum(df$score, na.rm = T)

[1] 16

 

** 함수 내에 결측체 제외 기능(na.rm = T) 기능이 없다면, filter()로 결측치를 제거한 후 함수를 적용해야한다.

    제외 기능(na.rm = T)의 여부는 ?함수명 을 통해서 알 수 있다.

 

 


# 결측치 대체하기

데이터가 적고, 결측치가 많은 경우, 모든 결측치 데이터를 제외하면 데이터의 손실이 너무 크다.

=> 대안 : 다른 값을 채워 넣는 방법

 

 

 

- 결측치 대체법

 

1. 대표값(평균, 최빈값 등)으로 일괄 대체하는 방법

2. 통계분석 기법 적용해서 예측값을 추정해서 대체하는 방법

 

 

 

* 평균값으로 대체하기 *

 

mean(exam$math, na.rm = T)

[1] 55.23529

 

평균이 55인 것을 확인하고, NA이면 평균값으로 대체하도록 exam$math을 재설정해준다.

 

exam$math <- ifelse(is.na(exam$math), 55, exam$math)

table(is.na(exam$math))

 

TRUE 값이 없으므로 결측치가 없는 것이 확인되었다.

 

확인을 위해서 head()를 출력해보면,

 

head(exam)

 

이렇게 결측치를 제외한  데이터프래임 exam 을 확인해볼 수 있다.

 

 

 

 

728x90
반응형
LIST