我想用较大的 R 数据集替换所有值,这些数据集的值分别高于第95个百分点和第5个百分点以下。我的目标是避免简单地从数据中完全剔除这些异常值。

任何建议将不胜感激,我在其他任何地方都找不到任何有关如何执行此操作的信息。

最佳答案

这样就可以了。

fun <- function(x){
    quantiles <- quantile( x, c(.05, .95 ) )
    x[ x < quantiles[1] ] <- quantiles[1]
    x[ x > quantiles[2] ] <- quantiles[2]
    x
}
fun( yourdata )

10-01 03:48