当前位置: 首页 > news >正文

python统计分析——t分布、卡方分布、F分布

参考资料:python统计分析【托马斯】

        一些常见的连续型分布和正态分布分布关系紧密。

        t分布:正态分布的总体中,样本均值的分布。通常用于小样本数且真实的均值/标准差不知道的情况。

        卡方分布:用于描述正态分布数据的变异程度。

         F分布:用于比较两组正态分布的变异程度。

1、t分布

        1908年,在都柏林的吉尼斯啤酒厂工作的W. S. Gosset被小样本的问题所在吸引,比如说大麦的化学性质,其样本量经常低至3左右。由于这些测量中,均值的真实方差并不知道,所以必须用均值的标准误来近似。样本均值和标准误之间的比例服从一个未知的分布,直到笔名为“Student”的Gosset解决了这个问题。对应的分布就是t分布,并在大样本量时收敛于正态分布。由于Gosset的笔名叫“Student”,该分布又叫做“Student”分布。

        由于大多数情况下,总体的均值和方差是未知的,我们在分析样本数据时一般都是处理t分布。t统计量可表示为:

t=\frac{\bar{x}-\mu}{s/\sqrt{n}}=\frac{\bar{x}-\mu}{SE}

        t分布的一个非常常见的应用就是计算均值的置信区间。95%置信区间(CI)的宽度,也就是说,这个区间在95%的情况下包含了真实的均值,该置信区间和包含95%样本均值的总体均值的宽度相同。

ci=mean\pm se\times t_{df,\alpha}

        下面的例子展示了对于n=20来说,如何计算t值并求其95%置信区间。95%置信区间的下限是大于分布2.5%的值;而其上限值是小于分布的97.5%的值。这些只可以通过百分点函数或逆生存函数获得。作为对比,我们也计算出正态分布对应的值。

# 导入库
import numpy as np
from scipy import stats
# 设置样本容量
n=20
# 计算自由度
df=n-1
# 设置显著性水平
alpha=0.05
# 利用逆生存函数获取t分布对应的位点值
stats.t(df).isf(alpha/2)
# 正态分布对应的位点值
stats.norm.isf(alpha/2)
# 当然在python可以用一行代码获得执行区间
# 比如计算样本容量为20,样本均值为10,标准差为5对应的均值置信区间
ci=stats.t.interval(alpha,df=19,loc=10,scale=10/5)
ci

2、卡方分布

        卡方分布以一种很简单的方式和正态分布产生关联:如果一个随机变量X服从正态分布,那么X^2服从卡方分布,其自由度是1。n个独立的标准正态随机变量平方和有n个自由度。

示例:

        一个药品制造商街道一个药品订单,需要发货的药片的标准差为σ=0.05。从下一批次的药品开始,n=13的随机样本的重量为3.04g、2.94g、3.01g、3.00g、2.94g、2.91g、3.02g、3.04g、3.09g、2.95g、2.99g、3.10g、3.02g。

        问:标准差是否高于准许值?

        答:由于卡方分布描述了来自标准正态分布的随机变量的平方和,我们不得不在计算相应的CDF值之前正态化我们的数据:

SF_{\chi ^2(n-1)}=1-CDF_{\chi^2(n-1)}\left ( \sum(\frac{x-\bar{x}}{\sigma})^2 \right )

        解释:如果这一批药来自标准差为0.05的一个分布,那么得到一个大于等于我们观察到的卡方值的可能性大约是19%。所以这并不反常。换句话说,这批药符合期望的标准差。

代码如下:

# 导入库
import numpy as np
from scipy import stats
# 录入数据
data=np.r_[3.04,2.94,3.01,3.00,2.94,2.91,3.02,3.04,3.09,2.95,2.99,3.10,3.02]
# 设置目标标准差
sigma=0.05
# 设置卡方分布
chi2Dist=stats.chi2(len(data)-1)
# 计算统计量
statistic=sum(((data-np.mean(data))/sigma)**2)
# 计算统计量对应的生存函数
chi2Dist.sf(statistic)

3、F分布

        该分布以Ronald Fisher先生的名字命名,他发明了F分布来决定ANOVA(方差分析)中的关键值。

        如果想要调查两个组别是否具有相同的方差,我们就必须计算两组标准差平方的比值:

F=\frac{S_x^2}{S_y^2}

        其中,S_x是第一个样本的样本标准差,S_y是第二个样本的样本标准差。

        这个统计量的分布就是F分布。在ANOVA中的应用来说,F分布的临界值经常通过3个变量计算得到:

        ①ANOVA分子自由度,

        ②ANOVA分母自由度,

        ③显著性水平。

        ANOVA比较了两个不同样本之间的方差大小,是用大的方差除以小的方差来完成的。最终的F统计量的公式如下:

F(r_1,r_2)=\frac{\chi_{r_1}^2/r_1}{\chi_{r_2}^2/r_2}

其中\chi_{r_1}^2\chi_{r_2}^2分别是样本1和样本2的卡方统计量,r1和r2是他们的自由度。

示例

        我们想比较两种测量眼睛运动的方法的精确度。这两种方法有不同的精确度和准确度。精确度描述了真实值和测量值之间的差异,而准确度由测量的变异程度决定。我们想用这个检验来决定两种方法的准确度是否相同,还是其中一种方法比另一种方法更准确。

方法1数据:[20.7,20.3,20.3,20.3,20.7,19.9,19.9,19.9,20.3,20.3,19.7,20.3]

方法2数据:[19.7,19.4,20.1,18.6,18.8,20.2,18.7,19.0]

计算代码如下:

# 导入库
import numpy as np
from scipy import stats
# 录入数据
method1=np.array([20.7,20.3,20.3,20.3,20.7,19.9,19.9,19.9,20.3,20.3,19.7,20.3])
method2=np.array([19.7,19.4,20.1,18.6,18.8,20.2,18.7,19.0])
# 计算f值
f_val=np.var(method1,ddof=1)/np.var(method2,ddof=1)
# 设置F分布
fd=stats.f(len(method1)-1,len(method2)-1)
p_onetail=fd.cdf(f_val)
print(p_onetail)

代码运行结果可知,p=0.019,所以我们拒绝原假设(两种方法有相同的准确度)。

相关文章:

python统计分析——t分布、卡方分布、F分布

参考资料:python统计分析【托马斯】 一些常见的连续型分布和正态分布分布关系紧密。 t分布:正态分布的总体中,样本均值的分布。通常用于小样本数且真实的均值/标准差不知道的情况。 卡方分布:用于描述正态分布数据的变异程度。 F分…...

onlyoffice创建excel文档

前提 安装好onlyoffice然后尝试api开发入门 编写代码 <html> <head><meta charset"UTF-8"><meta name"viewport"content"widthdevice-width, user-scalableno, initial-scale1.0, maximum-scale1.0, minimum-scale1.0"&…...

交通事故档案管理系统|基于JSP技术+ Mysql+Java+Tomcat的交通事故档案管理系统设计与实现(可运行源码+数据库+设计文档)

推荐阅读100套最新项目 最新ssmjava项目文档视频演示可运行源码分享 最新jspjava项目文档视频演示可运行源码分享 最新Spring Boot项目文档视频演示可运行源码分享 2024年56套包含java&#xff0c;ssm&#xff0c;springboot的平台设计与实现项目系统开发资源&#xff08;可…...

Chrome 114 带着侧边栏扩展来了

效果展示 manifest.json {"manifest_version": 3,"name": "ChatGPT学习","version": "0.0.2","description": "ChatGPT,GPT-4,Claude3,Midjourney,Stable Diffusion,AI,人工智能,AI","icons"…...

【论文笔记】RobotGPT: Robot Manipulation Learning From ChatGPT

【论文笔记】RobotGPT: Robot Manipulation Learning From ChatGPT 文章目录 【论文笔记】RobotGPT: Robot Manipulation Learning From ChatGPTAbstractI. INTRODUCTIONII. RELATED WORK1. LLMs for Robotics2. Robot Learning III. METHODOLOGY1. ChatGPT Prompts for Robot …...

深度学习 Lecture 4 Adam算法、全连接层与卷积层的区别、图计算和反向传播

一、Adam算法&#xff08;自适应矩估计&#xff09; 全名&#xff1a;Adapative Moment Estimation 目的&#xff1a;最小化代价函数&#xff08;和梯度下降一样&#xff09; 本质&#xff1a;根据更新学习率后的情况自动更新学习率的值(可能是自动增大&#xff0c;也可能是…...

uniApp中使用小程序XR-Frame创建3D场景(1)环境搭建

1.XR-Frame简介 XR-Frame作为微信小程序官方推出的3D框架&#xff0c;是目前所有小程序平台中3D效果最好的一个&#xff0c;由于其本身针对微信小程序做了优化&#xff0c;在性能方面比其他第三方库都要高很多。 2.与Three.js的区别 做3D小程序的同学们对Three.js一定不陌生…...

AI基础知识(4)--贝叶斯分类器

1.什么是贝叶斯判定准则&#xff08;Bayes decision rule&#xff09;&#xff1f;什么是贝叶斯最优分类器&#xff08;Bayes optimal classifier&#xff09;&#xff1f; 贝叶斯判定准则&#xff1a;为最小化总体风险&#xff0c;只需在每个样本上选择那个能使条件风险最小的…...

填补市场空白,Apache TsFile 如何重新定义时序数据管理

欢迎全球开发者参与到 Apache TsFile 项目中。 刚刚过去的 2023 年&#xff0c;国产开源技术再次获得国际认可。 2023 年 11 月 15 日&#xff0c;经全球最大的开源软件基金会 ASF 董事会投票决议&#xff0c;时序数据文件格式 TsFile 正式通过&#xff0c;直接晋升为 Apache T…...

Docker 笔记(七)--打包软件生成镜像

目录 1. 背景2. 参考3. 文档3.1 使用docker container commit命令构建镜像3.1.1 [Docker官方文档-docker container commit](https://docs.docker.com/reference/cli/docker/container/commit/)Description&#xff08;概述&#xff09;Options&#xff08;选项&#xff09;Exa…...

图论06-飞地的数量(Java)

6.飞地的数量 题目描述 给你一个大小为 m x n 的二进制矩阵 grid &#xff0c;其中 0 表示一个海洋单元格、1 表示一个陆地单元格。 一次 移动 是指从一个陆地单元格走到另一个相邻&#xff08;上、下、左、右&#xff09;的陆地单元格或跨过 grid 的边界。 返回网格中 无法…...

Java设计模式之单例设计模式

单例设计模式就是保证整个软件系统中&#xff0c;某个类只能存在一个对象实例&#xff0c;并且该类只提供一个取得该对象的方法。 单例设计模式包括两种&#xff1a;饿汉式和懒汉式。 饿汉式&#xff1a; 含义&#xff1a; 在类加载时就创建并初始化单例对象。这种方式确保了…...

多维时序 | MATLAB实现BiTCN-selfAttention自注意力机制结合双向时间卷积神经网络多变量时间序列预测

多维时序 | MATLAB实现BiTCN-selfAttention自注意力机制结合双向时间卷积神经网络多变量时间序列预测 目录 多维时序 | MATLAB实现BiTCN-selfAttention自注意力机制结合双向时间卷积神经网络多变量时间序列预测预测效果基本介绍模型描述程序设计参考资料 预测效果 基本介绍 1.M…...

深入了解Android垃圾回收机制

文章目录 一、内存分配二、垃圾回收触发条件三、GC算法3.1 Dalvik虚拟机的GC算法3.2 ART的GC算法 四、优化GC性能五、监控GC耗时情况六、总结 在Android应用开发中&#xff0c;内存管理和垃圾回收&#xff08;GC&#xff09;对于应用性能和稳定性至关重要。理解GC机制有助于我们…...

如何学好Python语言

学习Python&#xff1a;一场充满探索与实践的编程之旅 Python&#xff0c;作为一种解释型、交互式和面向对象的编程语言&#xff0c;近年来在数据科学、人工智能、Web开发等多个领域得到了广泛的应用。掌握Python&#xff0c;不仅可以提升个人的编程技能&#xff0c;还能够为未…...

计算机408网课评测+资料分享

408当然有比较好的网课推荐&#xff0c;比如王道的视频课 现在大部分人备战408基本都用王道的讲义&#xff0c;然后再搭配王道408的课程来听&#xff0c;可以学的很好。 其中408视频课中&#xff0c;我认为讲的比较好的是数据结构&#xff0c;和操作系统&#xff0c;计算机组…...

使用 ZipArchiveInputStream 读取压缩包内文件总数

读取压缩包内文件总数 简介 ZipArchiveInputStream 是 Apache Commons Compress 库中的一个类&#xff0c;用于读取 ZIP 格式的压缩文件。在处理 ZIP 文件时&#xff0c;编码格式是一个重要的问题&#xff0c;因为它决定了如何解释文件中的字符数据。通常情况下&#xff0c;Z…...

JavaScript对象修饰教程

在JavaScript中&#xff0c;对象修饰是一种常见的编程模式&#xff0c;用于动态地向对象添加新的功能或修改现有功能&#xff0c;同时保持对象的原始结构不变。对象修饰可以帮助我们实现代码的复用、扩展和维护&#xff0c;让代码更加灵活和可扩展。本文将深入探讨JavaScript对…...

转置卷积(transposed-conv)

一、什么是转置卷积 1、转置卷积的背景 通常&#xff0c;对图像进行多次卷积运算后&#xff0c;特征图的尺寸会不断缩小。而对于某些特定任务 (如图像分割和图像生成等)&#xff0c;需将图像恢复到原尺寸再操作。这个将图像由小分辨率映射到大分辨率的尺寸恢复操作&#xff0c…...

P1481 魔族密码

P1481 魔族密码 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 字典树 在插入字符串 s s s时&#xff0c;不断记录 s 0... k s_{0...k} s0...k​的个数取最大即可。 #include <bits/stdc.h> using namespace std; const int N 1e5 21; int cnt[N], tr[N][30], idx,…...

19c补丁后oracle属主变化,导致不能识别磁盘组

补丁后服务器重启&#xff0c;数据库再次无法启动 ORA01017: invalid username/password; logon denied Oracle 19c 在打上 19.23 或以上补丁版本后&#xff0c;存在与用户组权限相关的问题。具体表现为&#xff0c;Oracle 实例的运行用户&#xff08;oracle&#xff09;和集…...

云原生核心技术 (7/12): K8s 核心概念白话解读(上):Pod 和 Deployment 究竟是什么?

大家好&#xff0c;欢迎来到《云原生核心技术》系列的第七篇&#xff01; 在上一篇&#xff0c;我们成功地使用 Minikube 或 kind 在自己的电脑上搭建起了一个迷你但功能完备的 Kubernetes 集群。现在&#xff0c;我们就像一个拥有了一块崭新数字土地的农场主&#xff0c;是时…...

智慧工地云平台源码,基于微服务架构+Java+Spring Cloud +UniApp +MySql

智慧工地管理云平台系统&#xff0c;智慧工地全套源码&#xff0c;java版智慧工地源码&#xff0c;支持PC端、大屏端、移动端。 智慧工地聚焦建筑行业的市场需求&#xff0c;提供“平台网络终端”的整体解决方案&#xff0c;提供劳务管理、视频管理、智能监测、绿色施工、安全管…...

最新SpringBoot+SpringCloud+Nacos微服务框架分享

文章目录 前言一、服务规划二、架构核心1.cloud的pom2.gateway的异常handler3.gateway的filter4、admin的pom5、admin的登录核心 三、code-helper分享总结 前言 最近有个活蛮赶的&#xff0c;根据Excel列的需求预估的工时直接打骨折&#xff0c;不要问我为什么&#xff0c;主要…...

多模态大语言模型arxiv论文略读(108)

CROME: Cross-Modal Adapters for Efficient Multimodal LLM ➡️ 论文标题&#xff1a;CROME: Cross-Modal Adapters for Efficient Multimodal LLM ➡️ 论文作者&#xff1a;Sayna Ebrahimi, Sercan O. Arik, Tejas Nama, Tomas Pfister ➡️ 研究机构: Google Cloud AI Re…...

全面解析各类VPN技术:GRE、IPsec、L2TP、SSL与MPLS VPN对比

目录 引言 VPN技术概述 GRE VPN 3.1 GRE封装结构 3.2 GRE的应用场景 GRE over IPsec 4.1 GRE over IPsec封装结构 4.2 为什么使用GRE over IPsec&#xff1f; IPsec VPN 5.1 IPsec传输模式&#xff08;Transport Mode&#xff09; 5.2 IPsec隧道模式&#xff08;Tunne…...

C++ Visual Studio 2017厂商给的源码没有.sln文件 易兆微芯片下载工具加开机动画下载。

1.先用Visual Studio 2017打开Yichip YC31xx loader.vcxproj&#xff0c;再用Visual Studio 2022打开。再保侟就有.sln文件了。 易兆微芯片下载工具加开机动画下载 ExtraDownloadFile1Info.\logo.bin|0|0|10D2000|0 MFC应用兼容CMD 在BOOL CYichipYC31xxloaderDlg::OnIni…...

OPenCV CUDA模块图像处理-----对图像执行 均值漂移滤波(Mean Shift Filtering)函数meanShiftFiltering()

操作系统&#xff1a;ubuntu22.04 OpenCV版本&#xff1a;OpenCV4.9 IDE:Visual Studio Code 编程语言&#xff1a;C11 算法描述 在 GPU 上对图像执行 均值漂移滤波&#xff08;Mean Shift Filtering&#xff09;&#xff0c;用于图像分割或平滑处理。 该函数将输入图像中的…...

Java 二维码

Java 二维码 **技术&#xff1a;**谷歌 ZXing 实现 首先添加依赖 <!-- 二维码依赖 --><dependency><groupId>com.google.zxing</groupId><artifactId>core</artifactId><version>3.5.1</version></dependency><de…...

基于Java Swing的电子通讯录设计与实现:附系统托盘功能代码详解

JAVASQL电子通讯录带系统托盘 一、系统概述 本电子通讯录系统采用Java Swing开发桌面应用&#xff0c;结合SQLite数据库实现联系人管理功能&#xff0c;并集成系统托盘功能提升用户体验。系统支持联系人的增删改查、分组管理、搜索过滤等功能&#xff0c;同时可以最小化到系统…...