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 ,即认为数据来自正态分布总体。

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

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

相关文章

基坑安全:自动化监测系统的革新力量

在日新月异的基坑工程领域&#xff0c;基坑安全自动化监测系统犹如一位守护者&#xff0c;以其独特的优势&#xff0c;为工程的安全与质量保驾护航。该系统集先进的测量仪器、计算机技术与现代传感技术于一体&#xff0c;对基坑的围护结构及周边环境进行全方位、高精度的实时监…

00:HAL库的认识

一&#xff1a;HAL库 开发现状&#xff1a; 1&#xff1a;下载 网站&#xff1a; https://www.st.com/zh/embedded-software/stm32cube-mcu-mpu-packages.html 去选择我们的系列 我们使用的是STM32F103C8t6的这个 继续一直向下拉点击这个&#xff1b;之后傻瓜步骤直接可以…

桌面悬浮备忘录哪个好?能在桌面悬浮使用的备忘app

备忘录是我们日常工作和生活中的常用工具&#xff0c;它帮助我们记录重要信息&#xff0c;提醒我们完成各项任务。而将备忘录悬浮在桌面上使用&#xff0c;无疑能进一步提高我们的工作效率。想象一下&#xff0c;在处理复杂的工作任务时&#xff0c;你能够随时在桌面上查看提醒…

30. 梯度下降法及其应用

1. 引言 在深度学习中&#xff0c;损失函数的求解是一个关键步骤。损失函数通常没有解析解&#xff0c;因此需要通过最优化算法来逼近求解。其中&#xff0c;梯度下降法是最常用的优化算法之一。本文将详细介绍梯度下降法的基本概念、理论基础、及其在深度学习中的应用。 2. …

SpringMVC(2)——controller方法参数与html表单对应(请求参数的绑定)

controller方法参数与html表单对应 规则 1. 绑定机制 表单提交的数据都是kv格式的 usernamehaha&password123SpringMVC的参数绑定过程是把表单提交的请求参数&#xff0c;作为控制器中方法的参数进行绑定的&#xff0c;要求&#xff1a;提交表单的name和参数的名称是相同…

Apache Hadoop之历史服务器日志聚集配置

上篇介绍了Apache Hadoop的分布式集群环境搭建&#xff0c;并测试了MapReduce分布式计算案例。但集群历史做了哪些任务&#xff0c;任务执行日志等信息还需要配置历史服务器和日志聚集才能更好的查看。 配置历史服务器 在Yarn中运行的任务产生的日志数据不能查看&#xff0c;…

浅说平面dp(下)

上文链接 最大加权矩形 我们言归正传&#xff0c;首先我们可以想到&#xff0c;这道题其实是要求一个和&#xff0c;那么我们不难想到可以用前缀和来解决&#xff0c;但是这样的时间复杂度过于高了&#xff0c;那么我们怎么办呢&#xff1f;其实我们这里可以用一点最大字段和…

SPI通信协议和W25Q64

前言&#xff1a; STM32中的通信接口&#xff1a; UART 单总线 IIC SPI CAN 1. SPI FLASH W25Q64的关系 SPI:一种通信接口&#xff0c;可以用于和搭载SPI接口的设备通信 FLASH:是一种掉电不丢失的存储 -- 手机8256G的256 单片机 64K512K的512 芯片内部flash&…

c语言数据结构--顺序栈

实验内容&#xff1a; 用顺序存储结构&#xff0c;实现教材定义的栈的基本操作&#xff0c;提供数制转换功能&#xff0c;将输入的十进制整数转换成二进制。 实验步骤&#xff1a; &#xff08;1&#xff09;按照实验要求编写代码&#xff0c;构造顺序栈。 &#xff08;2&am…

【密码学】公钥密码的基本概念

在先前我写的密码学体制文章中谈到&#xff0c;现代密码学分为两大体制&#xff0c;介绍了一些有关对称密码体制诸如流密码和分组密码的内容。本文的主要内容则切换到公钥密码体制&#xff08;又称非对称密码体制&#xff09;&#xff0c;简述了公钥密码体制的基本思想和应用方…

2008年上半年软件设计师【上午题】真题及答案

文章目录 2008年上半年软件设计师上午题--真题2008年上半年软件设计师上午题--答案 2008年上半年软件设计师上午题–真题 2008年上半年软件设计师上午题–答案

微信小程序style动态绑定Object不生效处理方法

渲染的时候style变成了[Object Object] 解决方法: 给Object外面加一个[] <image :style"[imgStyle]" :src"url"></image>

算法学习笔记(8.1)-动态规划入门

目录 问题特性&#xff1a; 最优子结构&#xff1a; 代码示例&#xff1a;&#xff08;动态规划最优子结构&#xff09; 上述最小代价爬楼梯的运行过程&#xff1a; 代码示例&#xff1a; 无后效性&#xff1a; 解析&#xff1a; 具体过程图示如下&#xff1a; 具体的…

MAVLink代码生成-C#

一. 准备Windows下安装环境 Python 3.3 – 官网链接下载Python future模块 –pip3 install future TkInter (GUI 工具). – python for Windows自带&#xff0c;无需下载环境变量PYTHONPATH必须包含mavlink存储库的目录路径。 –set PYTHONPATH你的mavlink源码路径 源码下载在…

如何恢复永久删除的婚礼照片

我们的生活就像一本记忆剪贴簿&#xff0c;充满了褪色和模糊的快照。尽管我们想记住事情并留住快乐的回忆&#xff0c;但随着时间的流逝&#xff0c;它们会被冲走。为了避免这种情况并记住这些记忆&#xff0c;我们以照片的形式捕捉瞬间。这有助于缓解和分享那些快乐的时刻。但…

变阻器的故障排除方法有哪些?

变阻器&#xff0c;特别是滑动变阻器&#xff0c;作为电子电路中的常见元件&#xff0c;其故障排除方法主要依据具体的故障现象来确定。以下是一些常见的故障现象及其排除方法&#xff1a; 一、接触不良 现象&#xff1a;电阻器不起作用或电压不稳定。 排除方法&#xff1a; …

手撸俄罗斯方块(五)——游戏主题

手撸俄罗斯方块&#xff08;五&#xff09;——游戏主题 当确定游戏载体&#xff08;如控制台&#xff09;后&#xff0c;界面将呈现出来。但是游戏的背景色、方块的颜色、方框颜色都应该支持扩展。 当前游戏也是如此&#xff0c;引入了 Theme 的概念&#xff0c;支持主题的扩…

《面向对象分析与设计》读书笔记2

1、概念模型记录了系统中存在&#xff08;或者将存在&#xff09;的领域实体以及他们与系统中其他领域实体的关系&#xff0c;概念层的建模是利用业务领域的术语来完成的&#xff0c;应该是技术无关的。系统的逻辑视图利用了概念模型中创造的概念&#xff0c;建立起关键抽象和机…

flask模块化、封装使用缓存cache(flask_caching)

1.安装flask_caching库 pip install flask_caching 2.创建utils Python 软件包以及cache_helper.py 2.1cache_helper.py代码 from flask_caching import Cachecache Cache()class CacheHelper:def __init__(self, app, config):cache.init_app(app, config)staticmethoddef…

arm 、stm32、linux该如何学习?有没有先后顺序,先学什么比较好?

先讲自己&#xff0c;我是从Arduino单片机入门&#xff0c;再到stm32 &#xff0c;再开发瑞萨&#xff0c;TI&#xff0c;然后学校教了51。这是一个奇怪的学习过程&#xff0c;所以当我第一次接触51单片机的时候&#xff0c;刚好我有一些资料&#xff0c;是我根据网友给的问题精…