【发布时间】:2021-09-21 00:46:47
【问题描述】:
我正在尝试过滤数据框的多列 (15)。具体来说,我想使用 Q3 + IQR1.5 和 Q1 - IQR1.5 方法删除异常值。
玩具示例:
library(tidyverse)
aa <- c(2,3,4,3,2,2,1,6,5,4,3,1,15)
bb <- c(0.2,20,30,40,30,20,20,10,30,40,30,10,10)
cc <- c(-9,2,3,4,3,2,2,1,5,4,3,1,25)
df <- tibble(aa,bb,cc)
我试过没有成功:
i <- NULL
for(i in 1:ncol(fat)){
po <- fat %>%
filter(.[[i]] >= (quantile(.[[i]], .25) - IQR(.[[i]]) * 1.5))
po <- fat %>%
filter(.[[i]] <= (quantile(.[[i]], .75) + IQR(.[[i]]) * 1.5))
}
我可以使用过滤器和地图功能来做到这一点吗?以及如何?
非常感谢 GS
【问题讨论】:
标签: r dataframe filter purrr tibble