京公网安备 11010802034615号
经营许可证编号:京B2-20210330
箱形图以及python实践
最近在接触kaggle的竞赛示例,练习了一下,感觉受益匪浅。同时,心中也有个问题。拿到数据之后第一件事是什么?分析数据的情况?怎么分析?分析之后如何去处理数据呢?等等一些数据分析的工作。其中,大家都可能非常清楚条形图、直方图、散点图和曲线图的用处,但是箱形图呢?(或者称为盒须图)。他的意义在哪里呢?在python中又是如何实现的呢?
于是我今天翻开了贾俊平老师的那本《统计学》琢磨了一下午,又参考了各大网友的博客,于是在此作下总结。
箱形图:从字面上理解就是箱子的图,如下图:

箱形图有5个参数:
下边缘(Q1),表示最小值;
下四分位数(Q2),又称“第一四分位数”,等于该样本中所有数值由小到大排列后第25%的数字;
中位数(Q3),又称“第二四分位数”等于该样本中所有数值由小到大排列后第50%的数字;
上四分位数(Q4),又称“第三四分位数”等于该样本中所有数值由小到大排列后第75%的数字;
上边缘(Q5),表述最大值。
第三四分位数与第一四分位数的差距又称四分位间距。
那为什么要引入箱形图呢?这里有篇博文也不错箱形图分析
1.为了反映原始数据的分布情况,比如数据的聚散情况和偏态。看看《统计学》这本书的插图

从图中我们可以直观地看出,箱形图的中位数和上四分位数的间距比较窄的话,对应曲线图,这个间距内的数据比较集中,还有就是箱形图的上(下)边缘比较长的话,对应曲线图,尾巴就比较长。
2.箱型图有个功能就是可以检测这组数据是否存在异常值。异常值在哪里呢?就是在上边缘和下边缘的范围之外。(这个我也不太懂,总感觉和正态分布有一腿)
3.可以直观地比较多组数据的情况。还是《统计学》中的示例。

多组成绩的箱形图如下:

从这图我们可以很直观地看出以下信息:
1.各科成绩中,英语和西方经济学的平均成绩比较高,而统计学和基础会计学的平均成绩比较低。(用中位数来衡量整体情况比较稳定)
2.英语、市场营销学、西方经济学、计算机应用基础和财务管理成绩分布比较集中,因为箱子比较短。而经济数学、基础会计学和统计学成绩比较分散,我们可以对照考试成绩数据看看也可以证实。
3.从各个箱形图的中位数和上下四位数的间距也可以看出,英语和市场营销学的成绩分布是非常的对称,而统计学呢?非常的不平衡,大部分数据都分布在70到85(中位数到上四分位数)分以上。同样,也可以从成绩单里的数据证实
4.在计算机应用基础对应的箱形图出现了个异常点,我们回去看看成绩单,计算机那一栏,出现了个计算机大牛(真希望是我),考了95分,比第二名多了10分。而其他同学的成绩整体在80分左右。
5。其实我们也可以从中得知,用平均值去衡量整体的情况有时很不合理,用中位数比较稳定,因为中位数不太会收到极值的影响,而平均值则受极值的影响很大。
那么在python怎么去画箱型图呢?
本人用的是python 3,anaconda 平台。主要的模块有matplotlib,pandas,numpy
#首先导入基本的绘图包
import matplotlib.pyplot as plt
import numpy as np
import pandas as pd
#添加成绩表
plt.style.use("ggplot")
plt.rcParams['axes.unicode_minus'] = False
plt.rcParams['font.sans-serif']=['SimHei']
#新建一个空的DataFrame
df=pd.DataFrame()
#添加成绩单,最后显示成绩单表格
df["英语"]=[76,90,97,71,70,93,86,83,78,85,81]
df["经济数学"]=[65,95,51,74,78,63,91,82,75,71,55]
df["西方经济学"]=[93,81,76,88,66,79,83,92,78,86,78]
df["计算机应用基础"]=[85,78,81,95,70,67,82,72,80,81,77]
df

#用matplotlib来画出箱型图
plt.boxplot(x=df.values,labels=df.columns,whis=1.5)
plt.show()

#用pandas自带的画图工具更快
df.boxplot()
plt.show()

好了!今天的箱形图就总结这里了。下次记得拿到数据的时候,要记得分析数据的分布以及数据间的关系哦,尤其是用可视化的手段去分析。
最后,欢迎讨论以及批评指教!
数据分析咨询请扫描二维码
若不方便扫码,搜微信号:CDAshujufenxi
随着大数据技术的快速发展,商业竞争逐步从传统的经验式经营转变为数据驱动的精细化运营。海量的用户行为数据、交易数据、运营数 ...
2026-09-04CDA数据分析师 出品 作者:李诗怡 1. 波士顿矩阵(BCG Matrix) 定义: BCG于1970年提出的业务组合分析工具,以"市场增长率"(纵 ...
2026-09-04 数据分析师八成以上的时间在和数据表格打交道,但许多人拿到Excel后习惯性地先算、先分析,结果回头发现漏了一列关键数据, ...
2026-09-04数据透视表是Excel与Power BI中最核心的数据分析工具,具备快速汇总、维度拆分、动态筛选的能力,可高效完成数据归类与统计展示 ...
2026-09-03在Power BI数据分析可视化场景中,堆积柱状图+折线图是最常用的复合图表组合。堆积柱状图适合展示各细分维度当期数值、结构占比 ...
2026-09-03 很多数据分析师每天与Excel打交道,但当被问到“表格结构数据的基本处理单位是什么”“数据类型误判会引发哪些分析错误”“ ...
2026-09-03CDA数据分析师 出品 作者:李诗怡 一、8个核心数据清洗函数 1. TRIM:一键清除多余空格(最常用) 作用:仅保留文本中"单词/字 ...
2026-09-02数据分析的核心并非单纯操作工具、整理报表或绘制图表,而是依靠科学的思维逻辑挖掘数据价值、解释业务现象、指导经营决策。在完 ...
2026-09-02在社会经济、产业研究、区域治理与大数据实证分析中,面板数据是最具研究价值的数据类型。面板数据同时包含截面维度与时间维度信 ...
2026-09-02 很多数据分析师能熟练计算均值、标准差,但当被问到“如何用一张图让业务方3秒内看懂核心结论”“面对不同数据类型该怎么选 ...
2026-09-02在数据驱动决策的体系中,数据分析按照分析目的可分为描述性分析、诊断性分析、预测性分析与指导性分析四大类型。其中,诊断性分 ...
2026-09-01网络请求是Python爬虫开发、接口测试、数据拉取的核心基础功能,Python生态中主要依靠 urllib 和 requests 两大库实现HTTP请求操 ...
2026-09-01 很多数据分析师面对业务问题时,常常感到“知道要分析,却不知道用什么方法”。其实,数据分析并非无章可循——从三大基础范 ...
2026-09-01在数据库设计与业务数据维护中,自增ID是数据表最常用的主键字段,用于唯一标识每一条业务数据,正常状态下ID应保持连续递增。但 ...
2026-08-31在数理统计、数据分析、经济测算与日常量化评估中,平均值是刻画数据集中趋势、反映整体水平的基础核心指标。在实际应用中,最常 ...
2026-08-31在数据驱动的时代,数据分析早已不是“凭经验、靠感觉”的零散操作,而是一套具备固定逻辑、标准化流程的系统方法——这就是数据 ...
2026-08-31在大数据时代背景下,海量行业数据亟需通过专业化工具挖掘潜在价值,辅助企业业务决策、优化运营模式、规避经营风险。Python凭借 ...
2026-08-28SQL是数据分析领域最基础、最核心的工具,承担着取数、清洗、统计、分层、归因的全流程工作。不同于单纯的语法练习,实战化SQL数 ...
2026-08-28 很多企业团队并非缺乏指标,而是陷入“指标失控”:仪表盘上堆满实时跳动的数据,却无法回答“当前瓶颈在哪、下一步该做什么 ...
2026-08-28随着新零售模式的快速普及,零售行业从传统的“货品驱动”全面转向“用户驱动”。门店交易数据、线上消费记录、浏览轨迹、复购频 ...
2026-08-27