np.percentile获取中位数、百分位数
给定一个递增数组a,求它的中位数。
np.percentile(a,50)
中位数就是50%处的数字,也可以获得0%、100%处的数字,0%处的数字就是第一个数字,100%处的数字就是最后一个数字。1/(len(a)-1)*100处的数字就是第2个数字,2/(len(a)-1)*100处的数字就是第3个数字,以此类推。
import numpy as np
a = np.array([1, 2, 3, 6, 7, 11, 13])
for ind, v in enumerate(a):
print("index", ind, "value", v, "percentile", ind / (len(a) - 1) * 100)
percen = np.percentile(a, ind / (len(a) - 1) * 100)
assert np.abs(percen - v) < 1e-3, "%s!=%s" % (percen, v)
输出为
index 0 value 1 percentile 0.0
index 1 value 2 percentile 16.666666666666664
index 2 value 3 percentile 33.33333333333333
index 3 value 6 percentile 50.0
index 4 value 7 percentile 66.66666666666666
index 5 value 11 percentile 83.33333333333334
index 6 value 13 percentile 100.0
np.percentile()函数的作用就是求百分位数,从而能够知道数字大致的分布。
percentile函数原型为:
numpy.percentile(a, q, axis=None, out=None, overwrite_input=False)
- a是原始数组,可以是多维数组
- q为0~100之间的浮点数或者浮点数组,若为浮点数组表示批量查询
- axis:在a的哪个轴上计算百分位数
np.percentile获取中位数、百分位数的更多相关文章
- np.percentile()
np.percentile(a, q, axis=None, out=None, overwrite_input=False, interpolation='linear', keepdims=Fal ...
- python numpy库np.percentile用法说明
在python中计算一个多维数组的任意百分比分位数,此处的百分位是从小到大排列,只需用np.percentile即可…… a = range(1,101) #求取a数列第90%分位的数值 np.per ...
- [LeetCode] 295. Find Median from Data Stream ☆☆☆☆☆(数据流中获取中位数)
295. Find Median from Data Stream&数据流中的中位数 295. Find Median from Data Stream https://leetcode.co ...
- python中获取中位数
普通方法: 对列表进行排序,然后根据长度为奇数或者偶数的不同情况计算中位数 def huahua(x): length = len(x) print(length) x.sort() print(x) ...
- 剑指offer(65):获取数据流中的中位数
参考 https://blog.csdn.net/u011080472/article/details/51291089 题目描述 如何得到一个数据流中的中位数?如果从数据流中读出奇数个数值,那么中位 ...
- Python_箱型图绘制与特征值获取
它主要用于反映原始数据分布的特征,还可以进行多组数据分布特征的比较 如何利用Python绘制箱型图 需要的import的包 import matplotlib.pyplot as plt from m ...
- 问题: 数据流中位数 求解 时间复杂度度 java
今天练习了一题: 数据流中位数 问题描述:数字是不断进入数组的,在每次添加一个新的数进入数组的同时返回当前新数组的中位数. 案例: 持续进入数组的数的列表为:[1, 2, 3, 4, 5],则返回[1 ...
- Numpy求均值、中位数、众数的方法
首先需要数据源,这里随便写了一个: nums = [1,2,3,4] 求均值和中位数均可以使用numpy库的方法: import numpy as np #均值 np.mean(nums) #中位数 ...
- numpy.percentile
http://docs.scipy.org/doc/numpy/reference/generated/numpy.percentile.html numpy.percentile(a, q, axi ...
随机推荐
- Python 爬虫利器 Selenium 介绍
Python 爬虫利器 Selenium 介绍 转 https://mp.weixin.qq.com/s/YJGjZkUejEos_yJ1ukp5kw 前面几节,我们学习了用 requests 构造页 ...
- basename
我使用过的Linux命令之basename - 去掉文件名的目录和后缀 本文链接:http://codingstandards.iteye.com/blog/840784 (转载请注明出处) 用途 ...
- 8. Rotate String
8. Rotate String Description Given a string and an offset, rotate string by offset. (rotate from lef ...
- 前后端通过API交互
前两篇已经写好了后端接口,和前段项目环境也搭建好了 现在要通过接口把数据展示在页面上 先占位置写架子 创建一个头部组件和底部组件占位置 <template> <h1>这是头部组 ...
- Saltstack报错小记
这是之前的一篇文章,由于有小伙伴也遇到同样的错误,就拿出来分享下吧 [root@master ~]# salt 'minion.saltstack.com' state.sls init.pkg[ER ...
- Java笔记(四)常用基础类
常用基础类 一)String String内部用一个字符数组表示字符串: private final char value[]; 注意:Java9对此做了优化,采用byte[],如果字符都是ASCII ...
- 在win10中解决 你要以何方式打开此 .xlsx
鼠标右击开始按钮,点击控制面板. 查看方式选择大图标或者小图标. 然后点击“默认程序”. 点击,设置默认程序. 在左侧程序蓝,选择你需要设定的程序.然后点击“将此程序设为默认值”.确定 ...
- [P2671][NOIP2015]求和 (数论)
[题目链接] 这位大神讲得很详细:点我 本蒟蒻只会抄抄题解了 #include<bits/stdc++.h> #define max(a,b) (a>b?a:b) #define m ...
- [P3625][APIO2009]采油区域 (前缀和)
这道题用二维前缀和可以做 难度还不算高,细节需要注意 调试了很久…… 主要是细节太多了 #include<bits/stdc++.h> using namespace std; #defi ...
- CSS_级联和继承
2016-11-06 <CSS入门经典>第七章 1.在HTML中使用CSS样式表的三种方式: (1)内联的样式表. eg:<em style="background-whi ...