在计算四分位数时我做错了什么?

塞缪尔·帕特森
x = np.array([1, 3, 7, 11])
print(np.quantile(x, 0.75))
print(np.quantile(x, 0.25))
8.0
2.5

我如何获得这些答案?我究竟做错了什么?我是不是真的很傻?或者q1和q3是9和2?

修剪

您在做错的是没有阅读文档默认插值为linear; 你似乎在期待midpoint

x = np.array([1, 3, 7, 11])
print(np.quantile(x, 0.75, interpolation="midpoint"))
print(np.quantile(x, 0.25, interpolation="midpoint"))

输出:

9.0
2.0

在最初的尝试中,您使用了默认的“线性”插值,该插值使用了由两个最近点表示的范围的分数。我花了大约一个小时研究这个分数。NumPy文档说:

线性:i +(j-i)*分数,其中分数是被i和j包围的索引的分数部分。

该术语index未在此页面上定义,我也无法通过一些相关方法在其他地方找到它。我在此答案中首次发布的假设是错误的-现在已删除。我最终放弃了,并尝试通过计算indexas的值对概念进行逆向工程(j - i) / fraction

print(f'{" q":3} {" val":4} {" i":3} {"j":3} {"frac"}  {"index"}')
x = np.array([0, 1, 3, 6, 10])
lo = [0, 0, 0, 1, 1, 3, 3, 3,  6,  6, 10]
hi = [0, 1, 1, 3, 3, 3, 6, 6, 10, 10, 10]
for q in range(0, 11):
    interp = np.quantile(x, q/10)
    i, j = lo[q], hi[q]
    fraction = 0 if i == j else (interp - i) / (j - i)
    index    = 0 if i == j else (j - i) / fraction
    print(f'{round(q/10, 1):3} {round(interp, 1):4} {i:2} {j:2}   {round(fraction, 1):<3}  {round(index, 2):6.2f}')

输出:

 q   val  i  j   frac  index
0.0  0.0  0  0   0      0.00   # i == j
0.1  0.4  0  1   0.4    2.50
0.2  0.8  0  1   0.8    1.25
0.3  1.4  1  3   0.2   10.00
0.4  2.2  1  3   0.6    3.33
0.5  3.0  3  3   0      0.00   # i == j
0.6  4.2  3  6   0.4    7.50
0.7  5.4  3  6   0.8    3.75
0.8  6.8  6 10   0.2   20.00
0.9  8.4  6 10   0.6    6.67
1.0 10.0 10 10   0      0.00   # i == j

在这一点上,我不知所措来解释“分数”概念。我确实知道,这是一种统计学上的尝试,它是对分位数值进行最佳估计的方法,假设会x从相同的基础(和未知)分布中将更多的观察结果添加到集合中

如果有人发现我的计算错误,或者可以任何方式阐明这一点,请编辑此答案,评论等。我今天距离我的理解范围还有很长的路要走。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

我在计算 Hive 中的中位数时做错了

来自分类Dev

在计算cidr IP范围时我做错了什么?

来自分类Dev

四分位数与四分位数

来自分类Dev

计算的熊猫列的四分位数类别

来自分类Dev

尝试在MDX中计算四分位数

来自分类Dev

在Weka Explorer中计算方差,四分位数

来自分类Dev

计算给定数字列表的四分位数

来自分类Dev

Seaborn箱线图四分位数计算

来自分类Dev

我在转换时做错了什么

来自分类Dev

¿我做错了什么?

来自分类Dev

我的 javascript 函数出错,不确定我在计算 stv 方程时做错了什么

来自分类Dev

四分位数间距应如何在Python中计算?

来自分类Dev

如何使用NumPy计算Minitab等效四分位数

来自分类Dev

我对 mxGetPr 做错了什么

来自分类Dev

处理Contex(Java-Android)时我做错了什么

来自分类Dev

flexbox尝试对齐这些图像时,我做错了什么?

来自分类Dev

在C中传递结构时,我做错了什么?

来自分类Dev

安装此主题时我做错了什么?

来自分类Dev

检索按钮组的值时我做错了什么?

来自分类Dev

我在打开该文件时做错了什么?

来自分类Dev

在尝试无限循环时,我做错了什么?

来自分类Dev

处理Contex(Java-Android)时,我做错了什么

来自分类Dev

在嘲笑此方法时我做错了什么?

来自分类Dev

我在尝试设置这些实例变量时做错了什么?

来自分类Dev

我在使用 JSON 解码器时做错了什么

来自分类Dev

我在使用 USerDefault 保存数据时做错了什么

来自分类Dev

从 main.js 导出模块时我做错了什么?

来自分类Dev

我在定位这个内联元素时做错了什么?

来自分类Dev

为什么我的dplyr百分位数计算不适用于整洁的评估?

Related 相关文章

热门标签

归档