ap_lo cholesterol gluc smoke alco active
Min. : -70.00 1:52385 1:59479 0:63831 0:66236 0:13739
1st Qu.: 80.00 2: 9549 2: 5190 1: 6169 1: 3764 1:56261
Median : 80.00 3: 8066 3: 5331
Mean : 96.63
3rd Qu.: 90.00
Max. :11000.00
如果你注意到,ap_lo
在两端都有异常值,它们是数据输入错误,ap_lo是舒张压,它不应该是负值或那么高。
我想删除它们(可能会找到更多),我该如何删除它们在R中的索引呢?
下面的代码 * 不是 * 答案:
CV$ap_lo <- CV[-c(which.min(CV$ap_lo))]
1条答案
按热度按时间jckbn6z71#
许多有效方法之一是使用
boxplot
返回的非参数离群值。设
v
为您的值:v <- c(-100, rnorm(50), 100)
和stats
是boxplot
ing返回的统计量(不需要实际绘图):stats <- boxplot(v, plot = FALSE)
,则可以删除离群值(根据箱线图标准),如:v_without_outliers <- setdiff(v, stats$out)
或更短:相关: