numpy : np.percentile使用

来源:互联网 发布:二级access题库软件 编辑:程序博客网 时间:2024/06/04 22:54

首先明确百分位数:

第p个百分位数是这样一个值,它使得至少有p%的数据项小于或等于这个值,且至少有(100-p)%的数据项大于或等于这个值。

举个例子:高等院校的入学考试成绩经常以百分位数的形式报告。比如,假设某个考生在入学考试中的语文部分的原始分数为54分。相对于参加同一考试的其他学生来说,他的成绩如何并不容易知道。但是如果原始分数54分恰好对应的是第70百分位数,我们就能知道大约70%的学生的考分比他低,而约30%的学生考分比他高
这里的p = 70 .

在numpy中,是这样的:

numpy.percentileParameters    ----------    a : np数组    q : float in range of [0,100] (or sequence of floats)        Percentile to compute。        要计算的q分位数。    axis : 那个轴上运算。    keepdims :bool是否保持维度不变。    Examples    --------    >>> a = np.array([[10, 7, 4], [3, 2, 1]])    >>> a    array([[10,  7,  4],           [ 3,  2,  1]])    >>> np.percentile(a, 50) #50%的分位数,就是a里排序之后的中位数    3.5    >>> np.percentile(a, 50, axis=0) #axis为0,在纵列上求    array([[ 6.5,  4.5,  2.5]])    >>> np.percentile(a, 50, axis=1) #axis为1,在横行上求    array([ 7.,  2.])    >>> np.percentile(a, 50, axis=1, keepdims=True)    #保持维度不变,这对使用sklearn的fit有好处。    array([[ 7.],           [ 2.]])
原创粉丝点击