removeOutliers <- function(df){
for(col in colnames(df)){
q1 <- quantile(df$col,0.75,na.rm = TRUE)
q2 <- quantile(df$col,0.25,na.rm = TRUE)
i <- IQR(dfcol,na.rm = TRUE)
up <- q1 +(1.5 * i)
down <- q2 -(1.5*i)
df[df$col < down|df$col > up, col ] = NA
return(df)
}
}
이런식으로 만들고 싶은데 적용이 안되네요ㅠㅠㅠ방법이있을까요?
Comment 1
-
cardiomoon
2020.04.15 01:52
일단 데이터프레임이 아닌 하나의 벡터에서 outlier를 NA로 바꾸는 함수를 만드신 후 apply 나 map을 이용해 데이터프레임에 적용하십시요.