0
点赞
收藏
分享

微信扫一扫

numpy : percentile使用(多用于去除 离群点)


“无意中发现了一个巨牛的人工智能教程,忍不住分享一下给大家。教程不仅是零基础,通俗易懂,而且非常风趣幽默,像看小说一样!觉得太牛了,所以分享给大家。点这里可以跳转到教程。”

numpy.percentile()

百分位数是统计中使用的度量,表示小于这个值的观察值占总数q的百分比。 函数​​numpy.percentile()​​接受以下参数。​​numpy.percentile(a, q, axis)​

其中:

序号

参数及描述

1.

​a​

2.

​q​

3.

​axis​

首先明确百分位数的概念

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

举个例子:

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

这里的p = 70 

在numpy中,是这样的:

numpy.percentile
Parameters
----------
a : np数组
q : float in range of [0,100] (or sequence of floats)
Percentile to compute。
要计算的q分位数。
axis : 那个轴上运算。
keepdims :bool是否保持维度不变。

Examples
-------- >>> a = range(1,101) >>> np.percentile(a, 90) #90%的分位数 90.1 #表示有百分之九十的数小于90.1。 3.5 #表示有百分之五十的数小于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.]])

举报

相关推荐

0 条评论