首页 > 编程知识 正文

中位数,众数,平均数 python,python计算中位数函数

时间:2023-05-05 16:14:29 阅读:276927 作者:714

首先定义一个数据,在这里我假定为:

num=[2,3,2,5,1,0,1,2,9] 一、求中位数

       中位数(又称中值,英语:Median),统计学中的专有名词,代表一个样本、种群或概率分布中的一个数值,其可将数值集合划分为相等的上下两部分。对于有限的数集,可以通过把所有观察值高低排序后找出正中间的一个作为中位数。如果观察值有偶数个,则中位数不唯一,通常取最中间的两个数值的平均数作为中位数。

       一个数集中最多有一半的数值小于中位数,也最多有一半的数值大于中位数。如果大于和小于中位数的数值个数均少于一半,那么数集中必有若干值等同于中位数。设连续随机变量X的分布函数为F(X),那么满足条件P(X≤m)=F(m)=1/2的数称为X或分布F的中位数。对于一组有限个数的数据来说,其中位数是这样的一种数:这群数据的一半的数据比它大,而另外一半数据比它小。

       计算有限个数的数据的中位数的方法是:把所有的同类数据按照大小的顺序排列。如果数据的个数是奇数,则中间那个数据就是这群数据的中位数;如果数据的个数是偶数,则中间那2个数据的算术平均值就是这群数据的中位数。

import numpy as npnp.median(num) 二、求均值

       平均数(英语:Mean,或称平均值)是统计中的一个重要概念。为集中趋势的最常用测度值,目的是确定一组数据的均衡点。算术平均数(或简称平均数)是一组样本 的和除以样本的数量。其通常记作:

       例如,  ,这组数的算术平均数是:。

       在统计中算术平均数常用于表示统计对象的一般水平,它是描述数据集中程度的一个统计量。我们既可以用它来反映一组数据的一般情况,也可以用它进行不同组数据的比较,以看出组与组之间的差别。用平均数表示一组数据的情况,有直观、简明的特点,所以在日常生活中经常用到,如平均的速度、平均的身高、平均的产量、平均的成绩......“ 范围 ” 用于数值型数据,不能用于分类数据和顺序数据。

import numpy as npnp.mean(num)

三、求众数

      众数(mode)指一组数据中出现次数最多的数据值。例如{2,3,3,3}中,出现最多的是3,因此众数是3,众数可能是一个数,但也可能是多个数。在离散概率分布中,众数是指概率质量函数有最大值的数据,也就是最容易取様到的数据。在连续概率分布中,众数是指机率密度函数有最大值的数据,也就是机率密度函数的峰值。在统计学上,众数和平均数、中位数类似,都是总体或随机变量有关集中趋势的重要资讯。在和谐的电脑分布(正态分布)中,众数位于峰值,和平均数、中位数相同。但若分布是高度偏斜分布,众数可能会和平均数、中位数有很大的差异。

       分布中的众数不一定只有一个,若概率质量函数或机率密度函数在x1, x2……等多个点都有最大值,就会有多个众数,最极端的情形是离散型均匀分布,所有的点概率都相同,所有的点都是众数。若机率密度函数有数个局部最大值,一般会将这几个极值都称为众数,此连续机率分布会称为多峰分布(和单峰性相反)。若是对称的单峰分布(例如正态分布),众数和平均数、中位数会重合[1]。若一随机变量是由对称的总体中产生,可以用取样的平均值来估计总体的众数。

方法一:用numpy中建立元素出现次数的索引的方法求众数

import numpy as npc=np.bincount(num)np.argmax(c)

方法二:直接利用scipy下stats模块

from scipy import statsstats.mode(num)[0][0]

 

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。