首页/文章/ 详情

统计分布讲解

3年前浏览2223

image.png

 过冷水诚挚邀请你加入Matlab仿真秀官方交流群进行Matlab学习、问题咨询、 Matlab相关资料下载,群号:927550334 

QQ图片20210424105303.png

概率论是一门数学学科,它与几何或分析力学等学科有很相似的目标。之前有一直和大家讲Monte Carlo、分布函数、抽样方法,高端的玩家往往会用最基本的东西玩出不一般的花样,本期过冷水和大家一起学习Matlab有关数据统计和随机变量分布的入门知识。

随机现象中,变量的取值是不确定的,称之为随机变量。描述随机变量取值概率的函数称为概率分布。对于随机变量,通常主要关心它的两个主要数字特征:数学期望用于描述随机变量的平均值,方差用于描述随机变量分布的差异程度,方差的算术平方根称为均方差。另外协方差和相关系数用于描述两个变量的线性关联程度。

随机变量的分布根据其取值特点不同主要分为离散型和连续型两类,若用ζ表示实验投硬币计正方面次数,正面向上次数”,其取值可能为0,1,2,.....10,则为离散型随机变量。典型的离散型分布有离散均匀分布、二项分布、Possion分布等。若用变量η表示学生群体的身高分布,其取值可能在[1.5,2.5]中任何值,则为连续型随机变量。典型的连续型分布有均匀分布、正态分布、指数分布、χ2分布、t分布、F分布。

统计分布函数:

y = pdf('name',x,A,B,C,D)

Name:表示具体分布类型;x:随机变量;A、B、C、D:不同分布对应的参数。

常见概率分布密度函数如下表:

中文函数名

调用名称

输入参数A

输入参数B

输入参数C

输入参数D

Beta分布

Beta

a第一个形状参数

b第二个形状参数

——

——

二项分布

Binomial

n实验次数

每次成功实验的概率

——

——

卡法分布

Chisquare

v自由度

——

——

——

指数分布

Exponetial

u均值

——

——

——

F分布

F

v1分子自由度

v2分母自由度

——

——

Gamma分布

Gamma

a形状参数

b尺度参数

——

——

几何分布

Geometric

ρ概率参数

——

——

——

超几何分布

Hypergeometric

m总体的大小

k总体所需特征项数

n抽取样本数

——

对数分布

Lognormal

u对数值均值

σ对数值的标准差

——

——

负二项分布

Negative Binomial

r成功次数

p单个实验成功概率

——

——

非中心F分布

Noncentral F

v1分子自由度

v2分母自由度

δ非中心参数

——

非中心t分布

Noncentral t

v自由度

δ非中心参数

——

——

非中心卡方

Noncentral Chi-square

v自由度

δ非中心参数

——

——

正态分布

Normal

u均值

σ标准差

——

——

泊松分布

Poisson

λ均值

——

——

——

瑞利分布

Rayleigh

b尺度参数

——

——

——

T分布

T

v自由度

——

——

——

均匀分布

Uniform

a下部端点

b上部端点

——

——

离散均匀分布

Discrete Uniform

n最大可观测值

——

——

——

Weibull分布

Weibull

a尺度参数

b形状参数

——

——


离散均匀分布案例:

设一个随机变量ζ服从离散均匀分布,如果其概率为

图片

则其分布函数为:

图片

代码:

n=20;x=1:n;

y = pdf('Discrete Uniform',x,n);

%绘制分布图像

figure1 = figure;

axes1 = axes('Parent',figure1);

hold(axes1,'on');

plot(x,y,'MarkerFaceColor',[0 0.447058826684952 0.74117648601532],'MarkerEdgeColor',[0 0 1],'Marker','o','LineWidth',2,'Color',[1 0 0]);

ylabel('概率分布');xlabel('随机变量');

title('离散均匀分布');

xlim(axes1,[0 21]);ylim(axes1,[-0.2 0.4]);

box(axes1,'on');

hold(axes1,'off');

set(axes1,'FontSize',14,'LineWidth',2,'YTick',[-0.2 -0.14 -0.08 -0.02 0.04 0.1 0.16 0.22 0.28 0.34 0.4 0.4]);

%储存图像

% pwd是获取当前运行目录

filename=[pwd,'\','离散均匀分布'];

print(filename,figure1,'-r600','-dtiffn');

若将实验可能结果分为两个:A发生、A不发生,则称此随机实验为二项分布:

图片

那么ζ服从一个简单离散分布P(ζ=1)=p,P(ζ=0)=1-p,称为二项分布。将二项分布实验独立重复进行n次,称为n重二项分布,n重二项分布实验中A发生的次数分布为:

图片

称为参数为n、p的二项分布:ζ~B(n,p)。

图片

代码:

x=0:50;

n=500;P=0.05

y = pdf('Binomial',x,n,p);

%绘制分布图像

figure1 = figure;

axes1 = axes('Parent',figure1);

hold(axes1,'on');

plot(x,y,'MarkerFaceColor',[1 0 0],'MarkerEdgeColor',[1 0 0],'MarkerSize',8,'Marker','*','LineWidth',2);

ylabel('发生概率');xlabel('事件发生次数');

title('二项分布');

box(axes1,'on');

hold(axes1,'off');

set(axes1,'Clipping','off','FontName','楷体','FontSize',14,'LineWidth',2);

%储存图像

% pwd是获取当前运行目录

filename=[pwd,'\','二项分布'];

print(filename,figure1,'-r600','-dtiffn');

均匀分布

连续型概率分布的表达式与离散型有很大不同,因为连续型随机变量取值是无法列举的,况且在单个点取值的概率总是0。连续型概率分布是用密度函数来表示。相应随机变量取值的概率可通过对密度函数积分得到。

均匀分布密度函数:

图片

图片

图片

代码:

x=linspace(-10,10,100)

p=1/5;

pd = makedist('Uniform',p);

y = pdf(pd,x);

%均匀分布的累计概率分布

syms x

x1=linspace(-10,0,100);

x2=linspace(0,5,100);

x3=linspace(5,10,100);

y1=linspace(0,0,100);

f=@(t)(1/5);%概率密度分布;

y2=double(arrayfun(@(t)(int(f,x,0,t)),x2));

y3=linspace(1,1,100)


%绘制分布图像

int(1/5,x,0,5)

figure1 = figure;

axes1 = axes('Parent',figure1);

hold(axes1,'on');

plot(x,y,'MarkerFaceColor',[1 0 0],'MarkerEdgeColor',[1 0 0],'Marker','o','LineWidth',2);

ylabel('概率密度分布函数','FontName','楷体');

xlabel('随机变量','FontName','楷体');

title('均匀分布');

xlim(axes1,[-11 11]);

ylim(axes1,[-0.02 0.23]);

hold(axes1,'off');

% 设置其余坐标区属性

set(axes1,'FontName','楷体','FontSize',14,'FontWeight','bold','LineWidth',2,'YMinorTick','on','YTick',[-0.02 0 0.02 0.04 0.06 0.08 0.1 0.12 0.14 0.16 0.18 0.2 0.22 0.23]);

%绘制累计概率分布

figure2 = figure;

axes1 = axes('Parent',figure2);

hold(axes1,'on');

plot([x1 x2 x3],[y1 y2 y3],'DisplayName','$f(x)=1/5,   ,0<x<5$','LineWidth',2);

ylabel('累计概率分布','FontWeight','bold','FontName','楷体');

xlabel('随机变量','FontWeight','bold','FontName','楷体');

title('均匀分布');

 xlim(axes1,[-11 11]);

 ylim(axes1,[-0.08 1.1]);

hold(axes1,'off');

set(axes1,'FontName','楷体','FontSize',14,'FontWeight','bold','LineWidth',2);

legend1 = legend(axes1,'show');

set(legend1,'Position',[0.150457307741795 0.856255571979886 0.239467178461172 0.0402666677951811],'Interpreter','latex')

%储存图像

% pwd是获取当前运行目录

filename1=[pwd,'\','均匀分布'];

filename2=[pwd,'\','累计概率分布'];

print(filename1,figure1,'-r600','-dtiffn');

print(filename2,figure2,'-r600','-dtiffn');

正态分布

正态分布是应用最广泛的一类概率分布,其概率密度为:

图片

记为N(u,σ2),其中u是随机变量取值的平均,而σ表征了随机变量取值的差异。特别地,N(0,1)称为标准正态分布。

图片

图片

代码:

x=-8:0.1:8;

mu=0;sigma=1;

pd = makedist('Normal',mu,sigma);

y = pdf(pd,x);

%正态分布的累计概率分布

syms x

x1=-8:0.1:8;

mu=0;sigma=1;

f=@(x)((1./sqrt(2*pi*sigma)).*(exp((-(x-mu).^2)./(2*sigma.^2))));%定义原始积分项函数;

y1=arrayfun(@(x)(quad(f,-8,x)),x1);

%绘制分布图像

figure1 = figure;

axes1 = axes('Parent',figure1);

hold(axes1,'on');

plot(x,y,'MarkerFaceColor',[1 0 0],'MarkerEdgeColor',[1 0 0],'Marker','o','LineWidth',2);

ylabel('随机变量概率密度');

xlabel('随机变量');

title('正态分布');

xlim(axes1,[-9 9]);

ylim(axes1,[-0.04 0.5]);

hold(axes1,'off');

set(axes1,'FontName','楷体','FontSize',14,'FontWeight','bold','LineWidth',2,'XTick',[-8 -7 -6 -5 -4 -3 -2 -1 0 1 2 3 4 5 6 7 8],'YTick',[-0.04 0.01 0.06 0.11 0.16 0.21 0.26 0.31 0.36 0.41 0.46 0.5]);

%累计概率分布图像

figure2 = figure;

axes1 = axes('Parent',figure2);

hold(axes1,'on');

plot(x1,y1,'DisplayName','$F(X)=\int_{-8}^{t}f(t)dt$','LineWidth',2);

text('Parent',axes1,'FontWeight','bold','FontSize',14,'Interpreter','latex','String','$N(\mu={0},\sigma^{2} ={1})$','Position',[-7.26031294452347 1.03435582822086 0]);

ylabel('累计概率');

xlabel('随机变量');

title('正态累计分布');

box(axes1,'on');

hold(axes1,'off');

set(axes1,'FontName','楷体','FontSize',14);

legend1 = legend(axes1,'show');

set(legend1,'Position',[0.134682450787465 0.850159728422969 0.220896033581171 0.049125053411969],'Interpreter','latex','FontSize',14);

%储存图像

% pwd是获取当前运行目录

filename1=[pwd,'\','正态分布'];

filename2=[pwd,'\','正态累计分布'];

print(filename1,figure1,'-r600','-dtiffn');

print(filename2,figure2,'-r600','-dtiffn');

正态分布对应的累计概率分布整体是没有问题的,从图像上可以看见2~4之间图像有个小凹凸,why?过冷水一时间也反应不过来,读者中有精通程序语言&数学的可以看看这个小问题是怎么回事,有答案欢迎在下方留言给出真知灼见。

本期过冷水就和大家分享以上几个常见的概率分布的函数图像的绘制方法,大家对pdf函数的使用方法有个熟悉了解就可以了。关于统计的分析方法和应用你我若是有缘会在下期和大家相见。


图片

        过冷水发表于 仿真秀 平台原创文章,未经授权禁止私自转载,如需转载请需要和作者沟通表明授权声明,未授权文章皆视为侵权行为,必将追责。如果您希望加入Matlab仿真秀官方交流群进行Matlab学习、问题咨询、 Matlab相关资料下载均可加群:927550334。

精品回顾

 matlab绘制农夫过河动态图

分子动力学的原子空间运动轨迹演示编程

过冷水带你用matlab制作演示动画

python批量移动文件&重命名代码分享

过冷水和你分享 matlab读取存储各种文件的方法 文末有独家金曲分享

image.png


理论科普求解技术代码&命令MATLAB
著作权归作者所有,欢迎分享,未经许可,不得转载
首次发布时间:2021-05-04
最近编辑:3年前
过冷水
博士 | 讲师 讨论号:927550334
获赞 359粉丝 183文章 107课程 11
点赞
收藏
作者推荐

¥5 5.0
未登录
还没有评论
课程
培训
服务
行家
VIP会员 学习 福利任务 兑换礼品
下载APP
联系我们
帮助与反馈