You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

R语言箱线图标注airquality数据集Wind列异常值索引的实现

实现方法

你只需要通过匹配异常值的数值,从Wind向量中提取对应的观测索引,再替换标注的label参数即可,修改后的完整代码如下:

library(datasets)
library(ggplot2)
a <- boxplot(airquality$Wind, plot = FALSE)
# 提取异常值对应的观测索引
out_idx <- which(airquality$Wind %in% a$out)
qplot(y = airquality$Wind, geom = 'boxplot') +
  annotate(geom = "text", x = rep(0.1, length(a$out)),
           y = a$out, label = out_idx, size = 2.5)
补充说明

如果你的数据集存在和异常值数值相同的非异常值,为了避免%in%出现误匹配,可以直接通过箱线图的官方判定规则计算索引,结果更严谨:

library(datasets)
library(ggplot2)
# 手动计算异常值判定边界
q <- quantile(airquality$Wind, c(0.25, 0.75), na.rm = TRUE)
iqr <- IQR(airquality$Wind, na.rm = TRUE)
upper_bound <- q[2] + 1.5 * iqr
lower_bound <- q[1] - 1.5 * iqr
# 直接筛选符合异常值条件的观测索引
out_idx <- which(airquality$Wind > upper_bound | airquality$Wind < lower_bound)
out_value <- airquality$Wind[out_idx]

qplot(y = airquality$Wind, geom = 'boxplot') +
  annotate(geom = "text", x = rep(0.1, length(out_idx)),
           y = out_value, label = out_idx, size = 2.5)

内容的提问来源于stack exchange,提问作者Ejrionm

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.05 02:54:04