MATLAB数据统计描述和分析
描述性统计就是搜集、整理、加工和分析统计数据, 使之系统化、条理化,以显示出数据资料的趋势、特征和数量关系。它是统计推断的基础,实用性较强,在数学建模的数据描述部分经常使用。
目录
1.频数表和直方图
2 .统计量
3.统计中几个重要的概率分布
3.1正态分布
3.2卡方分布
3.3 t分布
3.4 F分布
3.5MATALB中的命令
4.正态总体统计量的分布
5.参数估计
5.1 点估计
5.2 区间估计
5.3 参数估计的 Matlab 实现
6.假设检验
6.1 单个正态总体均值 μ 的检验
6.2 方差已知,关于 μ 的检验( Z 检验)
6.3 方差未知,关于 μ 的检验(t 检验)
6.4两个正态总体均值差的检验(t 检验)
7.分布拟合检验
1.频数表和直方图
一组数据(样本)往往是杂乱无章的,做出它的频数表和直方图,可以看作是对这 组数据的一个初步整理和直观描述。 将数据的取值范围划分为若干个区间,然后统计这组数据在每个区间中出现的次 数,称为频数,由此得到一个频数表。以数据的取值为横坐标,频数为纵坐标,画出一 个阶梯形的图,称为直方图,或频数分布图。
作频数表及直方图 求频数用 hist 命令实现,其用法是:
[N,X] = hist(Y,M)
得到数组(行、列均可)Y 的频数表。它将区间[min(Y),max(Y)]等分为 M 份(缺省时 M 设定为 10),N 返回 M 个小区间的频数,X 返回 M 个小区间的中点。
示例:下图为身高和体重数据:

程序:
clc,clear;
load data.txt;
high=data(:,1:2:9);
high=high(:);
weight=data(:,2:2:10);
weight=weight(:);
[n1,x1]=hist(high);
[n2,x2]=hist(weight);
subplot(1,2,1), hist(high);
title('身高直方图')
subplot(1,2,2), hist(weight);
title('体重直方图')
运行结果如下:


clc,clear;
fid1 = ['aggcacggaaaaacgggaataacggaggaggacttggcacggcattacacggagg' ... 'cggaggacaaacgggatggcggtattggaggtggcggactgttcgggga' ... 'gggacggatacggattctggccacggacggaaaggaggacacggcggacataca' ... 'atggataacggaaacaaaccagacaaacttcggtagaaatacagaagctta' ... 'cggctggcggacaacggactggcggattccaaaaacggaggaggcggacggaggc'];
a = 0; b = 0; c = 0; d = 0; e = 0;
for charIdx = 1:length(fid1) currChar = fid1(charIdx); if currChar == 'a' a = a + 1; elseif currChar == 'c' b = b + 1; elseif currChar == 'g' c = c + 1; elseif currChar == 't' d = d + 1; elseif currChar >= 'a' && currChar <= 'z' e = e + 1; % 超出范围的个数 end
end
f = [a b c d e];
he = sum(f);
disp('a,c,g,t个数')
disp(f);
disp('总个数')
disp(he);
countsNames = {'a', 'c', 'g', 't'};
figure;
bar(1:4, f(:,1:4));
set(gca, 'XTickLabel', countsNames);
xlabel('字符');
ylabel('频数');
title('字符频数直方图');

2 .统计量
假设有一个容量为n 的样本(即一组数据),需要对它进 行一定的加工,才能提出有用的信息,用作对总体(分布)参数的估计和检验。统计量反映样本数量特征的函数,它不含任何未知量。
下面我们介绍几种常用的统计量:

Matlab 中 std(x)返回 x 的标准差,var(x)返回方差,range(x)返回极差 。
上述标准差被(n-1)除是因为方差的无偏估计,若需要改为被n 除,Matlab 可用 std(x,1)和 var(x,1)来实现。

峰度可以用作衡量偏离正态分布的尺度之一 。
Matlab 中 moment(x,order)返回 x 的 order 阶中心矩,order 为中心矩的阶数。 skewness(x)返回 x 的偏度,kurtosis(x)返回峰度。
对上面给出的学生身高和体重数据,用 Matlab 计算以上统计量,程序如下:
clc
load data.txt;
high=data(:,1:2:9);high=high(:);
weight=data(:,2:2:10);weight=weight(:);
shuju=[high weight];
jun_zhi=mean(shuju);
zhong_wei_shu=median(shuju);
biao_zhun_cha=std(shuju) ;
ji_cha=range(shuju) ;
pian_du=skewness(shuju) ;
feng_du=kurtosis(shuju);
f=[jun_zhi zhong_wei_shu biao_zhun_cha ji_cha pian_du feng_du];
disp('均值、中位数、标准差、极差、偏度、峰度')
disp(f);
3.统计中几个重要的概率分布

3.1正态分布

3.2卡方分布

3.3 t分布

3.4 F分布

3.5MATALB中的命令
Matlab 统计工具箱中有 27 种概率分布,这里只对上面所述 4 种分布列出命令的字符:
norm 正态分布;
chi2 卡方分布;
t t 分布;
f F 分布;
工具箱对每一种分布都提供 5 类函数,其命令的字符是: pdf 概率密度; cdf 分布函数; inv 分布函数的反函数; stat 均值与方差; rnd 随机数生成 。

如下:生成标准正态分布和N(0,4)的正态分布,并画出图像程序:
clc;clear;
x=-6:0.01:6;
y=normpdf(x);
z=normpdf(x,0,2);
plot(x,y,x,z),
gtext('N(0,1)'),gtext('N(0,2^2)')

4.正态总体统计量的分布
用样本来推断总体,需要知道样本统计量的分布,而样本又是一组与总体同分布的随机变量,所以样本统计量的分布依赖于总体的分布。当总体服从一般的分布时,求某个样本统计量的分布是很困难的,只有在总体服从正态分布时,一些重要的样本统计量 (均值、标准差)的分布才有便于使用的结果。另一方面,现实生活中需要进行统计推断的总体,多数可以认为服从(或近似服从)正态分布。
下面是用均值和标准差构造的几个常用分布:


5.参数估计

5.1 点估计
点估计是用样本统计量确定总体参数的一个数值。评价估计优劣的标准有无偏性、 最小方差性、有效性等,估计的方法有矩法、极大似然法等。

5.2 区间估计

置信区间越小,估计的精度越高;置信水平越大,估计的可信程度越高。但是这两个指标显然是矛盾的, 通常是在一定的置信水平下使置信区间尽量小。通俗地说,区间估计给出了点估计的误 差范围。
5.3 参数估计的 Matlab 实现
Matlab 统计工具箱中,有专门计算总体均值、标准差的点估计和区间估计的函数。 对于正态总体,命令是:
[mu,sigma,muci,sigmaci]=normfit(x,alpha)
其中 x 为样本(数组或矩阵),alpha 为显著性水平α (alpha 缺省时设定为 0.05),返 回总体均值 μ 和标准差σ 的点估计 mu 和 sigma,及总体均值 μ 和标准差σ 的区间估计 muci 和 sigmaci。当 x 为矩阵时,x 的每一列作为一个样本。
6.假设检验
6.1 单个正态总体均值 μ 的检验

6.2 方差已知,关于 μ 的检验( Z 检验)
在 Matlab 中 Z 检验法由函数 ztest 来实现,命令为 :
[h,p,ci]=ztest(x,mu,sigma,alpha,tail)

示例:


x=[0.497 0.506 0.518 0.524 0.498... 0.511 0.520 0.515 0.512];
[h,p,ci]=ztest(x,0.5,0.015)
求得 h=1,p=0.0248,说明在 0.05 的水平下,可拒绝原假设,即认为这天包装机 工作不正常。
6.3 方差未知,关于 μ 的检验(t 检验)
在 Matlab 中t 检验法由函数 ttest 来实现,命令为:
[h,p,ci]=ttest(x,mu,alpha,tail)
示例:

x=[159 280 101 212 224 379 179 264 ... 222 362 168 250 149 260 485 170];
[h,p,ci]=ttest(x,225,0.05,1)
求得 h=0,p=0.2570,说明在显著水平为 0.05 的情况下,不能拒绝原假设,认为元件的平均寿命不大于 225 小时。
6.4两个正态总体均值差的检验(t 检验)
还可以用t 检验法检验具有相同方差的 2 个正态总体均值差的假设。在 Matlab 中 由函数 ttest2 实现,命令为:
[h,p,ci]=ttest2(x,y,alpha,tail)
与上面的 ttest 相比,不同处只在于输入的是两个样本 x,y(长度不一定相同), 而不是一个样本和它的总体均值;tail 的用法与 ttest 相似。
示例:


x=[78.1 72.4 76.2 74.3 77.4 78.4 76.0 75.6 76.7 77.3];
y=[79.1 81.0 77.3 79.1 80.0 79.1 79.1 77.3 80.2 82.1];
[h,p,ci]=ttest2(x,y,0.05,-1)
求得 h=1,p=2.2126e-04。表明在α = 0.05 的显著水平下,可以拒绝原假设,即认为建议的新操作方法较原方法优。
也可以做方差不相等的假设检验,使用格式为: h = ttest2(x,y,alpha,tail, 'unequal')
7.分布拟合检验
在实际问题中,有时不能预知总体服从什么类型的分布,这时就需要根据样本来检 验关于分布的假设。


示例:

程序:
clc
x=[141 148 132 138 154 142 150 146 155 158 ...
150 140 147 148 144 150 149 145 149 158 ...
143 141 144 144 126 140 144 142 141 140 ...
145 135 147 146 141 136 140 146 142 137 ...
148 154 137 139 143 140 131 143 141 149 ...
148 135 148 152 143 144 141 143 147 146 ...
150 132 142 142 143 153 149 146 149 138 ...
142 149 142 137 134 144 146 147 140 142 ...
140 137 152 145];
mm=minmax(x)
hist(x,8) %画直方图
fi=[length(find(x<135)),... length(find(x>=135&x<138)),... length(find(x>=138&x<142)),... length(find(x>=142&x<146)),... length(find(x>=146&x<150)),... length(find(x>=150&x<154)),... length(find(x>=154))] %各区间上出现的频数
mu=mean(x),sigma=std(x)
fendian=[135,138,142,146,150,154] %区间的分点
p0=normcdf(fendian,mu,sigma)
p1=diff(p0)
p=[p0(1),p1,1-p0(6)]
chi=(fi-84*p).^2./(84*p)
chisum=sum(chi);
x_a=chi2inv(0.9,4) %chi2分布的0.9分位数


求得皮尔逊统计量chisum= 2.2654,

故在 水平0.1下接受 H0 ,即认为数据来自正态分布总体。
相关文章:
MATLAB数据统计描述和分析
描述性统计就是搜集、整理、加工和分析统计数据, 使之系统化、条理化,以显示出数据资料的趋势、特征和数量关系。它是统计推断的基础,实用性较强,在数学建模的数据描述部分经常使用。 目录 1.频数表和直方图 2 .统计量 3.统计…...
设计分享—国外后台界面设计赏析
国外后台界面设计将用户体验放在首位,通过直观易懂的布局和高效的交互设计,提升用户操作效率和满意度。 设计不仅追求美观大方,还注重功能的实用性和数据的有效展示,通过图表和图形化手段使数据更加直观易懂。 采用响应式布局&a…...
最小生成树(算法篇)
算法之最小生成树 最小生成树 概念: 最小生成树是一颗连接图G所有顶点的边构成的一颗权最小的树,最小生成树一般是在无向图中寻找。最小生成树共有N-1条边(N为顶点数)。 算法: Prim算法 概念: Prim(普里姆)算法是生成最小生…...
教师管理小程序的设计
管理员账户功能包括:系统首页,个人中心,教师管理,个人认证管理,课程信息管理,课堂记录管理,课堂统计管理,留言板管理 微信端账号功能包括:系统首页,课程信息…...
Selenium 等待
环境: Python 3.8 selenium3.141.0 urllib31.26.19 Chromium 109.0.5405.0 (32 位) # 1 固定等待(time) # 固定待是利用python语言自带的time库中的sleep()方法,固定等待几秒。 # 这种方式会导致这个脚本运…...
安装easy-handeye
一、aruco_ros配置 mkdir -p ~/ros_ws/src cd ~/ros_ws/src git clone -b melodic-devel https://github.com/pal-robotics/aruco_ros.git cd .. catkin_make 二、visp配置(需要联外网下载东西,不然会一直出问题) sudo apt-get install ros-melodic-…...
【面试题】MySQL 索引(第二篇)
1.索引 索引是数据库中的一个核心概念,它对于提高数据库查询效率至关重要。以下是索引的详细概念解析: 一、索引的定义 基本定义:索引是一个排序的列表,其中存储着索引的值和包含这些值的数据所在行的物理地址(或逻…...
4. 小迪安全v2023笔记 javaEE应用
4. 小迪安全v2023笔记 javaEE应用 大体上跟随小迪安全的课程,本意是记录自己的学习历程,不能说是完全原创吧,大家可以关注一下小迪安全。 若有冒犯,麻烦私信移除。 默认有java基础。 文章目录 4. 小迪安全v2023笔记 javaEE应…...
anaconda修改安装的默认环境
📚博客主页:knighthood2001 ✨公众号:认知up吧 (目前正在带领大家一起提升认知,感兴趣可以来围观一下) 🎃知识星球:【认知up吧|成长|副业】介绍 ❤️如遇文章付费,可先看…...
MySQL 9.0 正式发行Innovation创新版已支持向量
从 MySQL 8.1 开始,官方启用了新的版本模型:MySQL 创新版 (Innovation) 和长期支持版 (LTS)。 根据介绍,两者的质量都已达到可用于生产环境级别。区别在于: 如果希望尝试最新的功能和改进,并喜欢与最新技术保持同步&am…...
基于Java+SpringMvc+Vue技术的智慧校园系统设计与实现
博主介绍:硕士研究生,专注于信息化技术领域开发与管理,会使用java、标准c/c等开发语言,以及毕业项目实战✌ 从事基于java BS架构、CS架构、c/c 编程工作近16年,拥有近12年的管理工作经验,拥有较丰富的技术架…...
【蔬菜网元宇宙】—— 探索农业的未来之旅
在数字化时代的浪潮中,技术和创新不断塑造着我们的生活方式。现在,这种变革已经延伸到了农业领域。蔬菜网,一个专注于农产品供应链的领先平台,自豪地宣布我们正式迈入元宇宙的世界——一个全新的虚拟空间,旨在彻底改变…...
淘宝商品历史价格查询(免费)
当前资料来源于网络,禁止用于商用,仅限于学习。 淘宝联盟里面就可以看到历史价格 并且没有加密 淘宝商品历史价格查询可以通过以下步骤进行: 先下载后,登录app注册账户 打开淘宝网站或淘宝手机App。在搜索框中输入你想要查询的商…...
14-47 剑和诗人21 - 2024年如何打造AI创业公司
2024 年,随着人工智能继续快速发展并融入几乎所有行业,创建一家人工智能初创公司将带来巨大的机遇。然而,在吸引资金、招聘人才、开发专有技术以及将产品推向市场方面,人工智能初创公司也面临着相当大的挑战。 让我来…...
WPF界面设计-更改按钮样式 自定义字体图标
一、下载图标文件 iconfont-阿里巴巴矢量图标库 二、xaml界面代码编辑 文件结构  对应的图标代码 Fonts/#iconfont 对应文件位置 <Window.Resources><ControlTemplate TargetType"Button" x:Key"CloseButtonTemplate"…...
开源项目的机遇与挑战
随着全球经济和科技环境的快速变化,开源软件项目的蓬勃发展成为了开发者社区的热门话题。越来越多的开发者和企业选择参与开源项目,以推动技术创新和实现协作共赢。本文将从开源项目的发展趋势、参与开源的经验分享,以及开源项目的挑战三个方…...
Linux实现CPU物理隔离
文章目录 背景使用 taskset 命令使用 cgroups案例 背景 在 Linux 上实现 CPU 的物理隔离(也称为 CPU 隔离或 CPU pinning),可以通过将特定的任务或进程绑定到特定的 CPU 核心来实现。这可以提高系统性能,尤其是在需要实时响应的应…...
springer latex模板参考文献不显示
原因 his is BibTeX, Version 0.99d (TeX Live 2024) The top-level auxiliary file: sn-article.aux I couldn’t open style file sn-mathphys-num.bst —line 2 of file sn-article.aux : \bibstyle{sn-mathphys-num : } I’m skipping whatever remains of this command I…...
使用Vue3、Pinia和Vite5打造高度还原的抖音仿制项目
douyin-vue 是一个模仿 抖音|TikTok 的移动端短视频项目。Vue 在移动端的"最佳实践",媲美原生 App 丝滑流畅的使用体验。使用了最新的 Vue 技术栈,基于 Vue3、Vite5 、Pinia实现。数据保存在项目本地,通过 axios-mock-adapter 库拦…...
stm32基本定时器
Driver_TIM6.c 需要注意立即进入中断问题,原因是预分频寄存器并没有更新预分频系数。 #include "Driver_TIM6.h" #include "Delay.h" /*** description: 给定时器6进行初始化* return {*}*/ void Driver_TIM6_Init(void) {/* 1. 给定时器6开启…...
Docker 离线安装指南
参考文章 1、确认操作系统类型及内核版本 Docker依赖于Linux内核的一些特性,不同版本的Docker对内核版本有不同要求。例如,Docker 17.06及之后的版本通常需要Linux内核3.10及以上版本,Docker17.09及更高版本对应Linux内核4.9.x及更高版本。…...
生成xcframework
打包 XCFramework 的方法 XCFramework 是苹果推出的一种多平台二进制分发格式,可以包含多个架构和平台的代码。打包 XCFramework 通常用于分发库或框架。 使用 Xcode 命令行工具打包 通过 xcodebuild 命令可以打包 XCFramework。确保项目已经配置好需要支持的平台…...
VB.net复制Ntag213卡写入UID
本示例使用的发卡器:https://item.taobao.com/item.htm?ftt&id615391857885 一、读取旧Ntag卡的UID和数据 Private Sub Button15_Click(sender As Object, e As EventArgs) Handles Button15.Click轻松读卡技术支持:网站:Dim i, j As IntegerDim cardidhex, …...
[10-3]软件I2C读写MPU6050 江协科技学习笔记(16个知识点)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16...
TRS收益互换:跨境资本流动的金融创新工具与系统化解决方案
一、TRS收益互换的本质与业务逻辑 (一)概念解析 TRS(Total Return Swap)收益互换是一种金融衍生工具,指交易双方约定在未来一定期限内,基于特定资产或指数的表现进行现金流交换的协议。其核心特征包括&am…...
基于Docker Compose部署Java微服务项目
一. 创建根项目 根项目(父项目)主要用于依赖管理 一些需要注意的点: 打包方式需要为 pom<modules>里需要注册子模块不要引入maven的打包插件,否则打包时会出问题 <?xml version"1.0" encoding"UTF-8…...
DBAPI如何优雅的获取单条数据
API如何优雅的获取单条数据 案例一 对于查询类API,查询的是单条数据,比如根据主键ID查询用户信息,sql如下: select id, name, age from user where id #{id}API默认返回的数据格式是多条的,如下: {&qu…...
Rust 异步编程
Rust 异步编程 引言 Rust 是一种系统编程语言,以其高性能、安全性以及零成本抽象而著称。在多核处理器成为主流的今天,异步编程成为了一种提高应用性能、优化资源利用的有效手段。本文将深入探讨 Rust 异步编程的核心概念、常用库以及最佳实践。 异步编程基础 什么是异步…...
MySQL中【正则表达式】用法
MySQL 中正则表达式通过 REGEXP 或 RLIKE 操作符实现(两者等价),用于在 WHERE 子句中进行复杂的字符串模式匹配。以下是核心用法和示例: 一、基础语法 SELECT column_name FROM table_name WHERE column_name REGEXP pattern; …...
大学生职业发展与就业创业指导教学评价
这里是引用 作为软工2203/2204班的学生,我们非常感谢您在《大学生职业发展与就业创业指导》课程中的悉心教导。这门课程对我们即将面临实习和就业的工科学生来说至关重要,而您认真负责的教学态度,让课程的每一部分都充满了实用价值。 尤其让我…...
