2016-07-08 5 views
-3

데이터 집합이 malt인데 하나의 열의 이름은 ka입니다. 나는 다른프로그래밍 프로그래밍 ifelse() 프로그래밍

malt$ka <- ifelse(malt$ka=="NA", mean(malt$ka), "malt$AcqCostPercust") 

이 작동하지 않는 경우 malt$ka 및 기타 값의 평균 값을 기준으로 그 ka 열의 NA 값을 대체 그대로 남아 있도록하여이 작업을 수행하려면, 나는 대체하는 방법 혼란 스러워요 값은 NA입니다.

+0

시도'ifelse (is.na (맥아 $ 카)의 의미 (맥아 $ 카, na.rm = TRUE), 맥아 $의 AcqCostPercust)' – Batanichek

+2

@Batanichek 돈 ' 'mean'에'na.rm = T'를 잊지 마라. – bouncyball

답변

0
x <- mean(malt$ka, na.rm=T) # assign mean value to a variable x 
malt$ka<-ifelse(is.na(malt$ka),x,malt$ka) 
1

또는

malt$ka[is.na(malt$ka)] <- mean(malt$ka, na.rm = TRUE)