머신러닝/R
함수 사용시 결측치 처리(na.omit, ifelse)
오지고지리고알파고포켓몬고
2017. 3. 26. 22:36
summary(dataset$price)
sum(dataset$price) # NA 출력
# 결측데이터 제거 방법1
sum(dataset$price, na.rm=T) # 2362.9
# 결측데이터 제거 방법2 - na포함 데이터 제거
price2 <- na.omit(dataset$price)
sum(price2) # 2362.9
length(price2) # 270 -> 30개 제거
# 결측데이터 처리(0으로 대체)
x <- dataset$price # price vector 생성
x[1:30] # 5.1 4.2 4.7 3.5 5.0
dataset$price2 = ifelse( !is.na(x), x, 0) # 0으로 대체
dataset$price2[1:30]
# 결측데이터 처리(평균으로 대체)
x <- dataset$price # price vector 생성
x[1:30] # 5.1 4.2 4.7 3.5 5.0
dataset$price3 = ifelse(!is.na(x), x, round(mean(x, na.rm=TRUE), 2) ) # 평균으로 대체
dataset$price3[1:30]
dataset[c('price', 'price2', 'price3')]