什么是平均数,中位数,众数,方差_平均数标准差

什么是平均数,中位数,众数,方差_平均数标准差Python代码实现第一步:添加数据到列表defnum(a):iffloat(a)==int(a):returnint(a)else:returnfloat(a)#添加数据li=[]print("请逐条添加数据!(若退出请输入0000)")whileTrue:print("请输入:&q

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

Python代码实现

第一步:添加数据到列表
def num(a):
    if float(a) == int(a):
        return int(a)
    return float(a)
#添加数据
li = []
print("请逐条添加数据!  (若退出请输入0000)")
while True:
    print("请输入:")
    x = input()
    if x == "0000":
        break
    li.append(num(float(x)))

其中,num() 为自定义函数,用于取整,即在不影响数值的情况下,去掉小数点后的 0
以上代码用于添加一组数据。

功能一:最大值、最小值、总和
print("最大值:",max(li))
print("最小值:",min(li))
print("总和:",sum(li))
功能二:平均数

平均数,统计学术语,是表示一组数据集中趋势的量数,是指在一组数据中所有数据之和再除以这组数据的个数。它是反映数据集中趋势的一项指标。解答平均数应用题的关键在于确定“总数量”以及和总数量对应的总份数。

avg = sum(li) / len(li)
print("平均数:",avg)
功能三:众数

是一组数据中出现次数最多的数值,叫众数,有时众数在一组数中有好几个。

d = {}
for i in li:
    ss = d.get(i)
    if ss == None:
        d[i] = 1
    else:
        d[i] += 1
for i in d.items():
    if i[1] == max(d.values()):
        print("众数:",i[0])

其中,d 为字典,用于存储各个数据出现的次数,字典的键为数据,值为次数。

功能四:中位数

对于有限的数集,可以通过把所有观察值高低排序后找出正中间的一个作为中位数。如果观察值有偶数个,通常取最中间的两个数值的平均数作为中位数。

lis = sorted(li)
if len(lis) % 2 == 1:
    print("中位数:",lis[int((len(lis) - 1) / 2)])
else:
    print("中位数:",(lis[int(len(lis) / 2 - 1)] + lis[int(len(lis) / 2)]) / 2)
功能五:极差

极差又称范围误差或全距(Range),以R表示,是用来表示统计资料中的变异量数(measures of variation),其最大值与最小值之间的差距,即最大值减最小值后所得之数据。

print("极差:",max(li) - min(li))
功能六:方差与标准差

统计中的方差(样本方差)是每个样本值与全体样本值的平均数之差的平方值的平均数。在许多实际问题中,研究方差即偏离程度有着重要意义。
标准差(Standard Deviation) ,中文环境中又常称均方差,是离均差平方的算术平均数的平方根,用σ表示。标准差是方差的算术平方根。标准差能反映一个数据集的离散程度。平均数相同的两组数据,标准差未必相同。

sum1 = 0
for i in li:
    sum1 += (i - avg) ** 2
print("方差:",sum1 / len(li))
print("标准差:",(sum1 / len(li)) ** (1 / 2))
以上所有代码的运行效果:

什么是平均数,中位数,众数,方差_平均数标准差
希望这些功能能对大家起到帮助!

博主推荐

n阶行列式求解

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/192519.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • 最快的 Hexo 博客搭建方法

    最快的 Hexo 博客搭建方法

  • C++/C与Java的区别

    C++/C与Java的区别Java是由C++发展而来的,保留了C++的大部分内容,其编程方式类似于C++。但Java的句法更清晰、规模更小、更易学。Sun公司曾对多种程序设计语言进行分析研究,取其精华去其糟粕,最终推出了Java。Java从根本上解决了C++的固有缺陷,形成了新一代面向对象的程序设计语言(当然了解决问题也是需要代价的)。一、跨平台(C\C++和Java)Java是基于JVM虚拟机的跨…

  • 2017 上海车牌(沪牌)标书购买攻略

    2017 上海车牌(沪牌)标书购买攻略本文介绍 上海车牌上海牌照标书购买的攻略,本文会一直跟随政策而更新, 希望对大家有所帮助本文2017年4月更新阅读目录第一步:确认自己是否有资格购买标书一定要确认自己的

  • 列存储索引1:初识列存储索引

    列存储索引1:初识列存储索引

    2021年11月25日
  • C# 多线程编程 ThreadStart ParameterizedThreadStart

    C# 多线程编程 ThreadStart ParameterizedThreadStart在实例化Thread的实例,需要提供一个委托,在实例化这个委托时所用到的参数是线程将来启动时要运行的方法。在.net中提供了两种启动线程的方式,一种是不带参数的启动方式,另一种是带参数的启动的方式。    不带参数的启动方式    如果启动参数时无需其它额外的信息,可以使用ThreadStart来实例化Thread,如下面的代码:1usingSystem;

  • “找不到VMware Tools 安装包”的解决办法——安装VMware Tools

    “找不到VMware Tools 安装包”的解决办法——安装VMware Tools最近刚接触虚拟机,在VMware下安装的是Ubuntu16.04.4。在安装完Ubuntu以后,想安装一个VMwareTools来解决文件在win10和虚拟机之间的拖拽问题,但是按照网上的教程左键点击“虚拟机——安装VMwareTools”选项卡以后没有找到VMwareTools的压缩包。VMwareTools的好处在于可以直接将win10下的文件拖拽或者复制粘贴到ubuntu中,而且…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号