统计学中的「标准差和方差」

news2025/2/11 21:12:40

标准差(Standard deviation)

简单来说,标准差是一组数值自平均值分散程度的一种测量观念。一个较大的标准差,代表大部分的数值和其平均值之间差异较大,一个较小的标准差,代表这些数值较接近平均值。
 

例如:

两组数的集合 {0, 5, 9, 14} 和 {5, 6, 8, 9} 其平均值都是7,但第二个集合具有较小的标准差

  • 标准差公式:

  • 公式描述:公式中数值为X1,X2,X3,……XN(皆为实数),其平均值(算数平均值)μ,标准差为σ

标准差可以当作不确定性的一种测量。在物理科学中,做重复性测量时,测量数值集合的标准差代表这些测量的精确度。当要决定测量值是否符合预测值,测量值的标准差占有决定性重要角色。如果测量平均值与预测值相差太远(同时与标准差数值做比较),则认为测量值与预测值互相矛盾。这很容易理解,因为如果测量值都落在一定数值范围之外,可以合理推论预测值是否正确。


标准差应用于投资上,可作为量度回报稳定性的指标。标准差数值越大,代表回报远离过去平均数值,回报较不稳定故风险越高。相反,标准差数值越小,代表回报较为稳定,风险亦较小。
 

例如:

A,B两组各有6位学生参加同一次语文测验,A组的分数为95,85,75,65,55,45  

B组的分数为73,72,71,69,68,67

 

这两组的平均数都是70,但A组的标准差为17.078分,B组的标准差为2.160分,说明A组学生之间的差距要比B组学生之间的差距大得多

方差(variance)

两人的5次测验成绩如下:

A:50,100,100,60,50  -->Average(A) = 72

B:73,70,75,72,70      -->Average(B) = 72
 

平均成绩相同,但A不稳定,对平均值偏大

方差描述随机变量对于数学期望的偏离程度

  • 方差公式:

  • 公式描述:公式中x为平均数,n为这组数据个数,x1,x2,x3……xn为这组数据具体数值。

可以看到方差是标准差的平方


除了期望,方差(variance)是另一个常见的分布描述量。如果说期望表示的是分布的中心位置,那么方差就是分布的离散程度。方差越大,说明随机变量取值越离散。

比如射箭时,一个优秀的选手能保持自己的弓箭集中于目标点附近,而一个经验不足的选手,他弓箭的落点会更容易散落许多地方。

上面的靶上有两套落点。尽管两套落点的平均中心位置都在原点 (即期望相同),但两套落点的离散程度明显有区别。蓝色的点离散程度更小。


数学上,我们用方差来代表一组数据或者某个概率分布的离散程度。可见,方差是独立于期望的另一个对分布的度量。两个分布,完全可能有相同的期望,而方差不同,正如我们上面的箭靶。

对于一个随机变量XX来说,它的方差为:Var(X)=E[(X−μ)2]Var(X)=E[(X−μ)2]

其中,μμ表示XX的期望值,即μ=E(X)μ=E(X)

我们可以代入期望的数学表达形式。


比如连续随机变量:Var(X)=E[(X−μ)2]=∫+∞−∞(x−μ)2f(x)dxVar(X)=E[(X−μ)2]=∫−∞+∞(x−μ)2f(x)dx
 

方差概念背后的逻辑很简单:一个取值与期望值的“距离”用两者差的平方表示。该平方值表示取值与分布中心的偏差程度,平方的最小取值为0,当取值与期望值相同时,此时不离散,平方为0,即“距离”最小;当随机变量偏离期望值时,平方增大。由于取值是随机的,不同取值的概率不同,我们根据概率对该平方进行加权平均,也就获得整体的离散程度——方差。


方差的平方根称为标准差(standard deviation, 简写std)。我们常用σσ表示标准差。σ=Var(X)−−−−−−√σ=Var(X)

标准差也表示分布的离散程度。

 正态分布的方差 

根据上面的定义,可以算出正态分布:

E(X)=1σ2π−−√∫+∞−∞xe−(x−μ)2/2σ2dxE(X)=1σ2π∫−∞+∞xe−(x−μ)2/2σ2dx的

方差为:Var(X)=σ2Var(X)=σ2
 

正态分布的标准差正等于正态分布中的参数σσ。这正是我们使用字母σσ来表示标准差的原因!


可以预期到,正态分布的σσ越大,分布离散越大,正如我们从下面的分布曲线中看到的:

当方差小时,曲线下的面积更加集中于期望值0附近。当方差大时,随机变量更加离散。此时分布曲线的“尾部”很厚,即使在取值很偏离0时,比如x=4x=4时,依然有很大的概率可以取到。

代码如下:

 
# 

from scipy.stats import normimport numpy as npimport matplotlib.pyplot as plt

# Note the difference in "scale", which is stdrv1 = norm(loc=0, scale = 1)rv2 = norm(loc=0, scale = 2)

x = np.linspace(-5, 5, 200)

plt.fill_between(x, rv1.pdf(x), y2=0.0, color="coral")plt.fill_between(x, rv2.pdf(x), y2=0.0, color="green", alpha = 0.5)

plt.plot(x, rv1.pdf(x), color="red", label="N(0,1)")plt.plot(x, rv2.pdf(x), color="blue", label="N(0,2)")

plt.legend()plt.grid(True)

plt.xlim([-5, 5])plt.ylim([-0.0, 0.5])

plt.title("normal distribution")plt.xlabel("RV")plt.ylabel("f(x)")

plt.show()

 指数分布的方差 

指数分布的表达式为:f(x)={λe−λx0ififx≥0x<0f(x)={λe−λxifx≥00ifx<0
 

它的方差为:Var(X)=1λ2Var(X)=1λ2
 

如下图所示:
 

 Chebyshev不等式 

我们一直在强调,标准差(和方差)表示分布的离散程度。标准差越大,随机变量取值偏离平均值的可能性越大。如何定量的说明这一点呢?我们可以计算一个随机变量与期望偏离超过某个量的可能性。比如偏离超过2个标准差的可能性。即P(|X−μ|>2σ)P(|X−μ|>2σ)


这个概率依赖于分布本身的类型。比如正态分布N(0,1)N(0,1),这一概率即为x大于2,或者x小于-2的部分对应的曲线下面积:

实际上,无论μμ和σσ如何取值,对于正态分布来说,偏离期望超过两个标准差的概率都相同,约等于0.0455 (可以根据正态分布的表达式计算)。随机变量的取值有约95.545%的可能性落在正负两个标准差的区间内,即从-2到2。如果我们放大区间,比如正负三个标准差,这一概率超过99%。我们可以相当有把握的说,随机变量会落正负三个标准差之内。上面的论述并不依赖于标准差的具体值。这里可以看到标准差所衡量的“离散”的真正含义:如果取相同概率的极端值区间,比如上面的0.0455,标准差越大,该极端值区间距离中心值越远。


然而,上面的计算和表述依赖于分布的类型(正态分布)。如何将相似的方差含义套用在其它随机变量身上呢?


Chebyshev不等式让我们摆脱了对分布类型的依赖。它的叙述如下:

  • 对于任意随机变量X,如果它的期望为μμ,方差为σ2σ2,那么对于任意t>0t>0,P(|X−μ|>t)≤σ2tP(|X−μ|>t)≤σ2t

  • 无论X是什么分布,上述不等式成立。我们让t=2σt=2σ,那么P(|X−μ|>2σ)≤0.25P(|X−μ|>2σ)≤0.25


也就是说,X的取值超过两个正负标准差的可能性最多为25%。换句话说,随机变量至少有75%的概率落在正负两个标准差的范围内。(显然这是最“坏”的情况下。正态分布显然不是”最坏“的)

from scipy.stats import normimport numpy as npimport matplotlib.pyplot as plt

# Note the difference in "scale", which is stdrv1 = norm(loc=0, scale = 1)

x1 = np.linspace(-5, -1, 100)x2 = np.linspace(1, 5, 100)x = np.linspace(-5, 5, 200)plt.fill_between(x1, rv1.pdf(x1), y2=0.0, color="coral")plt.fill_between(x2, rv1.pdf(x2), y2=0.0, color="coral")plt.plot(x, rv1.pdf(x), color="black", linewidth=2.0, label="N(0,1)")

plt.legend()plt.grid(True)

plt.xlim([-5, 5])plt.ylim([-0.0, 0.5])

plt.title("normal distribution")plt.xlabel("RV")plt.ylabel("f(x)")

plt.show()

MAD绝对中位值

中位数:统计学名词,是指将统计总体中的各个变量值按大小顺序排列起来形成一个数列,处于变量数列中间位置的变量值就称为中位数。

MAD:就是先求出给定数据的中位数(注意并非均值)然后原数列的每个值与这个中位数求出绝对差,然后新数列的中位值就是MAD

例如:

数据A:8,5,9,6,3,2,4,9  2,3,4,5,6,8,9

中位数 = 5

A - 5 = 3,0,4,1,2,3,1,4  0,1,1,2,3,3,4

MAD = 2

总 结

  • 标准差为方差的平方根

  • 方差用于表示分布的离散程度,方差越大,“极端区间”偏离中心越远

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/640194.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

开源数字人、虚拟直播部署教程

TheRamU/Fay: 语音互动,直播自动带货 虚拟数字人 (github.com) gitee fay: 这是一个数字人项目,包含python内核及ue数字人模型,可以用于做数字助理及自动直播,又或者作为你的应用入口也很帅 (gitee.com) 2022.10.27 补充mac上的安装办法:(34条消息) Fay数字人开源项目…

prisma 学习记录

1、prisma 可以看做是一个 ORM。 安装 prisma npm install prisma -D 设置要链接的数据库 npx prisma init --datasource-provider sqlite --datasource-provider 要使用的数据库 2、prisma 中的模型&#xff0c; 表示底层数据库中的表或者集合。 生成 Prisma Client API 的基…

chatgpt赋能python:Python中的延迟:如何暂停程序执行?

Python中的延迟&#xff1a;如何暂停程序执行&#xff1f; 如果你在编写Python程序时需要实现延迟效果&#xff0c;比如等待某些条件满足后再进行下一步操作&#xff0c;那么你可能需要使用Python提供的延迟功能。这篇文章将介绍Python中的延迟实现方法&#xff0c;并提供几个…

记一次面试中的相关问题

1. protobuf内部的实现原理 序列化与反序列化&#xff0c;比如对于数字它要求根据数字的大小选择存储空间&#xff0c;小于15的数字只用1个字节来表示&#xff0c;大于15的数用2个字节来表示&#xff0c;以此类推&#xff0c;这样要求可以尽可能地节省空间。Protobuf的一大特点…

chatgpt赋能python:Python教程:如何建立一个空列表

Python教程&#xff1a;如何建立一个空列表 Python是一种广泛应用于科学计算、数据分析、机器学习等领域的高级编程语言。在Python中&#xff0c;列表是一种非常重要的数据类型&#xff0c;可以用来存储许多不同类型的数据。在本文中&#xff0c;我们将介绍如何在Python中建立…

OJ Primed Subsequence

原题链接&#xff1a;传送锚点 1.题目 Description Given a sequence of positive integers of length n, we define a primed subsequence as a consecutive subsequence of length at least two that sums to a prime number greater than or equal to two. For ex…

【嵌入式IMAGE 3】opencv的搭建

1. OpenCV源代码下载地址 https://opencv.org/releases/ 2. 在windows平台编译&#xff08;mingw版本&#xff09; 2.1 下载cmake https://cmake.org/files/ 2.2 配置编译器环境变量 2.3 打开cmake-gui.exe a.Use default native compilers 使用默认的本机编译器 b.Specify n…

MyBatis(全)

文章目录 什么是MyBatis?MyBatis快速入门查询user表中所有数据 Mapper代理开发使用Mapper代理方式完成入门案例 MyBatis核心配置文件配置文件完成增删改查案例&#xff1a;完成品牌数据的增删改查操作准备环境查询-查询所有数据查询-查看详情查询-条件查询--1.多条件查询方法1…

css移动端

目录 谷歌模拟器 屏幕分辨率 视口 二倍图 适配方案 rem 简介 问题 媒体查询 移动端 设备宽度不同&#xff0c;HTML标签字号设置多少合适 flexible.js rem-移动端适配 less 注释 运算 嵌套 变量 导入 导出 禁止导出 谷歌模拟器 模拟移动设备&#xff0c;方…

MySQL Community Server的安装配置教程(Windows版本)

&#xff08;1&#xff09;了解MySQL Community Server&#xff1a; MySQL Community Server是开源的MySQL数据库服务的名称。它是MySQL AB在2000年推出的一个开源数据库服务器&#xff0c;现在由Oracle公司维护和管理。 MySQL Community Server是一个关系型数据库系统&#…

通讯录管理系统(cpp)

一 系统需求 主要用C来实现一个通讯录管理系统 需要包含以下功能 添加联系人&#xff1a;向通讯录中添加新人&#xff0c;信息包括姓名、性别、年龄、联系电话、家庭住址&#xff0c;最多记录1000人显示联系人&#xff1a;显示通讯录中所有联系人信息删除联系人&#xff1a;按…

【Spring】— 动态SQL :MyBatis的关联映射

目录 MyBatis的关联映射1、关联关系概述2、MyBatis中的关联关系2.1 一对一2.2 一对多2.3 多对多 MyBatis的关联映射 在实际应用中&#xff0c;对数据库的操作会涉及多张表&#xff0c;这在面向对象中就涉及对象与对象之间的关联关系。针对多表之间的操作&#xff0c;MyBatis提…

全志V3S嵌入式驱动开发(wifi驱动)

【 声明&#xff1a;版权所有&#xff0c;欢迎转载&#xff0c;请勿用于商业用途。 联系信箱&#xff1a;feixiaoxing 163.com】 荔枝派上面除了支持v3s自带的有线网口&#xff0c;还带有一个支持sd协议的esp 8089 wifi模块。有了这个模块&#xff0c;v3s没有网线&#xff0c;也…

chatgpt赋能python:Python程序与SEO:如何建立程序使您的网站优化更好

Python程序与SEO&#xff1a;如何建立程序使您的网站优化更好 今天&#xff0c;越来越多的网站和在线业务转向搜索引擎优化&#xff0c;以吸引更多访问者和客户。Python编程语言是一种快速、灵活、易于学习的工具&#xff0c;如果正确使用它可以使您的网站SEO更好。下面我们来…

【从删库到跑路】MySQL系列——数据库的介绍MySQL的启动

&#x1f38a;专栏【MySQL】 &#x1f354;喜欢的诗句&#xff1a;更喜岷山千里雪 三军过后尽开颜。 &#x1f386;音乐分享【如愿】 大一同学小吉&#xff0c;欢迎并且感谢大家指出我的问题&#x1f970; 文章目录 &#x1f354;什么是数据库⭐组成⭐数据库的优势 &#x1f35…

Spring Security--自动登录

也就是remember me 在配置链上加一个 然后发送请求时加上:remember-me字段 value值可以为&#xff0c;ture&#xff0c;1&#xff0c;on 我们记住登录后&#xff0c;关掉浏览器再打开&#xff0c;访问一下接口&#xff0c;可以访问&#xff0c;说明记住登录成功了。 因为有的…

Spring中Bean的生命 周期与作用域

文章目录 前言Bean的作用域概念Bean作用域类型1. singleton&#xff1a;单例作⽤域2. prototype&#xff1a;原型作⽤域&#xff08;多例作⽤域&#xff09;3. request&#xff1a;请求作⽤域4. session&#xff1a;回话作⽤域5. application&#xff1a;全局作⽤域6. websocke…

51单片机实训项目之“红外控制小风扇”代码详解

本代码实现的功能是通过红外遥控来控制风扇的转速。废话不多说&#xff0c;直接上代码。 另外补充一点红外通信的原理&#xff1a; 红外接收 NEC协议&#xff1a; 数据格式 发射端的方波图&#xff0c;接收端的正好与之相反&#xff0c;数据传输从最低位开始 NEC 标准下…

mqtt.fx连接阿里云物联网平台

这里写目录标题 注册公共示例创建产品添加设备创建云产品流转生成基本信息配置mqtt.fx客户端数据传送 前提条件&#xff1a;下载mqtt.fx软件&#xff0c;以及注册好阿里云物联网平台账号 本实验用两个mqtt.fx客户端接入阿里云物联网平台&#xff0c;来实现不同设备间消息的传输…

大数据Doris(四十):Routine Load基本原理和语法介绍

文章目录 Routine Load基本原理和语法介绍 一、基本原理 二、Routine Load 语法 Routine Load基本原理和语法介绍 例行导入(Routine Load)功能,支持用户提交一个常驻的导入任务,通过不断的从指定的数据源读取数据,将数据导入到 Doris 中。目前Rou