我试图理解 pandas 中的下/上百分位数计算,但有点困惑。这是示例代码及其输出。
test = pd.Series([7, 15, 36, 39, 40, 41])
test.describe()
output:
我只对 25%、75% 的百分位感兴趣。
我想知道 pandas 使用什么方法来计算它们?
参考https://en.wikipedia.org/wiki/Quartile文章中,结果不同如下:
那么 pandas 使用什么统计/数学方法来计算百分位数?
正如我在评论中提到的,我终于通过尝试弄清楚了它是如何工作的from pandas.core.algorithms import quantile
using quantile
按照@Abdou 建议的方式运行。
我不太擅长仅通过打字来解释它,因此我只会在给定的示例中进行 25% 和 75% 的示例。这是简短的(也许很糟糕)解释:
对于示例列表[7, 15, 36, 39, 40, 41]
分位数如下:
7 -> 0%
15 -> 20%
36 -> 40%
39 -> 60%
40 -> 80%
41 -> 100%
由于我们要找到 25% 的百分位数,因此它将在 15 到 36 之间,而且,它是 20% + 5% = 15 + (36-15)/4 = 15 + 5.25 = 20.25。
使用(36-15)/4,因为15和36之间的距离是40% - 20% = 20%,所以我们将其除以4得到5%。
同样的方法我们可以找到75%。
60% + 15% = 39 + 3*(40-39)/4 = 39.75
就是这样。对于不好的解释我真的很抱歉
注意:感谢@shin 在评论中提到的更正。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)