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

EDA新手关于boxplot解读、形态异常及异常值判断的技术咨询

箱线图解读与问题解答

问题背景

我是EDA领域新手,刚成功为数值数据绘制了箱线图,但对其信息解读存在困惑:

箱线图如下:
boxplot image

我想咨询以下问题:

  1. 查看箱线图时可获取哪些核心信息?
  2. 为何除age外,其余变量的箱线图无典型箱形结构?
  3. 如何判断数据是否为异常值?

附所用箱线图绘制代码:

def plot_boxplots_grid(dataframe, n_cols=3, subplot_size=(5, 3)):
    numerical_cols = [col for col in dataframe.columns if dataframe[col].dtype != 'object' and dataframe[col].nunique() > 2]
    n_rows = (len(numerical_cols) + n_cols - 1) // n_cols 
    plt.figure(figsize=(subplot_size[0] * n_cols, subplot_size[1] * n_rows))
    for i, col in enumerate(numerical_cols):
        plt.subplot(n_rows, n_cols, i + 1)  
        sns.boxplot(y=dataframe[col])
        plt.title(col)
    plt.tight_layout() 
    plt.show()

1. 箱线图能提供的核心信息

箱线图的核心作用是快速呈现数据的分布特征,核心信息包括:

  • 中位数:箱子中间的横线,代表数据的中间位置,一半数据大于它,一半小于它
  • 四分位距(IQR):箱子上下边界分别对应上四分位数(Q3,75%的数据小于它)和下四分位数(Q1,25%的数据小于它),箱子高度即IQR,反映数据的集中程度
  • 极值范围:箱子上下延伸的须线,通常覆盖Q1-1.5IQR到Q3+1.5IQR区间内的所有数据
  • 异常值:须线之外的独立点,代表偏离整体分布的极端数据

2. 除age外其余变量无典型箱形的原因

从图中能看到fnlwgt、capital-gain、capital-loss没有正常箱形,核心原因是数据分布极度倾斜:

  • capital-gain和capital-loss的大部分数据集中在0附近,只有极少数样本有非零的极端值,导致箱子被压缩成一条线,分布信息被极端值完全拉偏
  • fnlwgt的取值范围极大,且大部分数据集中在左侧小范围区间,同样让箱子被压缩,最终只剩须线和异常点
    另外你代码里筛选数值列的条件是nunique()>2,虽能排除二元数值,但这类严重倾斜的分布依然会被选中,导致画出的箱线图没有典型结构。

3. 异常值的判断标准

箱线图里的异常值通常用1.5*IQR规则判定:

  1. 计算四分位距:IQR = Q3 - Q1(Q3为上四分位数,Q1为下四分位数)
  2. 确定阈值:下界为Q1 - 1.5IQR,上界为Q3 + 1.5IQR
  3. 所有小于下界或大于上界的数据点,都会被标记为异常值

这个规则是经验性的,如果你的业务场景有特殊要求,也可以调整倍数(比如用3*IQR定义更极端的异常值)。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.29 16:10:55