R Capping函数返回有关缺少值和NaN';s
我试图使用以下函数来限制一些异常值,以便数据集整洁:R Capping函数返回有关缺少值和NaN';s,r,na,outliers,quantile,R,Na,Outliers,Quantile,我试图使用以下函数来限制一些异常值,以便数据集整洁: cap <- function(x){ quantiles <- quantile(x, c(.05, 0.25, 0.75, .95)) x[x < quantiles[2] - 1.5*IQR(x)] <- quantiles[1] x[x > quantiles[3] + 1.5*IQR(x)] <- quantiles[4] x } cap使用na.rm=T内部qu
cap <- function(x){
quantiles <- quantile(x, c(.05, 0.25, 0.75, .95))
x[x < quantiles[2] - 1.5*IQR(x)] <- quantiles[1]
x[x > quantiles[3] + 1.5*IQR(x)] <- quantiles[4]
x
}
cap使用na.rm=T
内部quantile
和IQR
可以解决您的问题:
cap <- function(x){
quantiles <- quantile(x, c(.05, 0.25, 0.75, 0.95), na.rm = T)
x[x < quantiles[2] - 1.5 * IQR(x, na.rm = T)] <- quantiles[1]
x[x > quantiles[3] + 1.5 * IQR(x, na.rm = T)] <- quantiles[4]
return(x)
}
cap使用na.rm=T
内部quantile
和IQR
可以解决您的问题:
cap <- function(x){
quantiles <- quantile(x, c(.05, 0.25, 0.75, 0.95), na.rm = T)
x[x < quantiles[2] - 1.5 * IQR(x, na.rm = T)] <- quantiles[1]
x[x > quantiles[3] + 1.5 * IQR(x, na.rm = T)] <- quantiles[4]
return(x)
}
cap您在哪里尝试过添加na.rm=T?您的IQR函数中是否也需要na.rm=T?您在哪里尝试过添加na.rm=T?您的IQR函数中是否也需要na.rm=T?非常感谢!这最终工作得很好,我一次只在函数的一个部分尝试了na.rm=T,而不是在同时的位置。非常感谢!这最终工作得很好,我一次只在函数的一个部分尝试na.rm=T,而不是同时在同一个位置尝试。