前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Python计算中位数 numpy.median

Python计算中位数 numpy.median

作者头像
chaibubble
发布2022-05-07 09:50:13
1.3K0
发布2022-05-07 09:50:13
举报

numpy模块下的median作用为: 计算沿指定轴的中位数 返回数组元素的中位数

其函数接口为:

代码语言:javascript
复制
median(a, 
       axis=None, 
       out=None,
       overwrite_input=False, 
       keepdims=False)

其中各参数为: a:输入的数组; axis:计算哪个轴上的中位数,比如输入是二维数组,那么axis=0对应行,axis=1对应列,如果对于二维数组不指定长度,将拉伸为一唯计算中位数; out:用于放置求取中位数后的数组。 它必须具有与预期输出相同的形状和缓冲区长度; overwrite_input :一个bool型的参数,默认为Flase。如果为True那么将直接在数组内存中计算,这意味着计算之后原数组没办法保存,但是好处在于节省内存资源,Flase则相反; keepdims:一个bool型的参数,默认为Flase。如果为True那么求取中位数的那个轴将保留在结果中;

代码语言:javascript
复制
>>> a = np.array([[10, 7, 4], [3, 2, 1]])
>>> a
array([[10,  7,  4],
       [ 3,  2,  1]])
>>> np.median(a)
# 1,2,3,4,7,10 
# (3+4)/2 = 3.5
3.5
>>> np.median(a, axis=0)
#(10+3)/2 = 6.5
#(7+2)/2 = 4.5
#(4+1)/2 = 2.5 
array([ 6.5,  4.5,  2.5])
>>> np.median(a, axis=1)
#奇数个数中位数
array([ 7.,  2.])
>>> m = np.median(a, axis=0)
>>> out = np.zeros_like(m)
>>> np.median(a, axis=0, out=m)
array([ 6.5,  4.5,  2.5])
>>> m
array([ 6.5,  4.5,  2.5])
>>> b = a.copy()
>>> np.median(b, axis=1, overwrite_input=True)
array([ 7.,  2.])
>>> assert not np.all(a==b)
>>> b = a.copy()
>>> np.median(b, axis=None, overwrite_input=True)
3.5
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2017-07-04,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档