【发布时间】:2017-12-06 19:54:21
【问题描述】:
我正在尝试手动计算列值的分位数,但与 Pandas 的结果输出相比,无法使用公式手动找到正确的分位数。 我四处寻找不同的解决方案,但没有找到正确的答案
In [54]: df
Out[54]:
data1 data2 key1 key2
0 -0.204708 1.393406 a one
1 0.478943 0.092908 a two
2 1.965781 1.246435 a one
In [55]: grouped = df.groupby('key1')
In [56]: grouped['data1'].quantile(0.9)
Out[56]:
key1
a 1.668413
使用公式手动查找,n为3,因为data1列中有3个值
quantile(n+1)
应用 df1 列的值
=0.9(n+1)
=0.9(4)
= 3.6
所以第 3.6 位是 1.965781,那么 pandas 是如何给出 1.668413 的呢?
【问题讨论】:
标签: python pandas statistics quantile