维舍什
我正在为 python 使用 seaborn 0.7.1 版。我正在尝试为下面的 numpy 数组创建一个箱线图
arr = np.array([2, 4, 5, 5, 8, 8, 9])
根据我的理解,四分位数 Q1 和 Q3 应该是 4 和 8,但从生成的箱线图中,Q1 约为 4.5。我错过了什么?
我正在使用以下命令生成图表
sns.boxplot(arr)
存在的重要性欧内斯特
这当然取决于四分位数的定义。
维基百科提到了 3 种计算四分位数的方法,
- 方法一:取样本下部的中位数[2,4,5]。结果 4。
- 方法二:取样本下部的中位数(包括其中位数)[2,4,5,5]。结果 4.5。
- 方法 3:下四分位数是第二个数据值的 75% 加上第三个数据值的 25%。结果:4*0.75+5*0.25 = 4.25。(它始终是方法 1 和 2 之间的平均值。
您也可以使用 numpy 来计算四分位数
x = [2, 4, 5, 5, 8, 8, 9]
np.percentile(x, [25])
这返回 4.5
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
编辑于
我来说两句