맛동산

함수 사용시 결측치 처리(na.omit, ifelse) 본문

머신러닝/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')]

'머신러닝 > R' 카테고리의 다른 글

dplyr패키지 - dataframe 핸들링하기 좋을듯  (0) 2017.03.26
pylr패키지 ddply  (0) 2017.03.26
plyr패키지 join  (0) 2017.03.26
seq, sample, rowMeans, rowSums  (0) 2017.03.26
논리연산자, ifelse, table  (0) 2017.03.26
Comments