基本数据统计分析上|集中位置统计量|分散程度统计量|分布形状统计量|常见概率分布

数据统计分析

现实生活中的许多数据都是随机产生的,如考试分数,月降雨量,灯泡寿命等。从统计角度来看,这些数据其实都是符合某种分布的,这种分布就是统计规律性

在数学建模过程中经常与数据打交道,需要进行数据统计分析

  1. 掌握基本的数据统计分析方法
  2. 能够对概率分布进行参数估计
  3. 进行简单的假设检验
  4. 熟悉Matlab的相关命令

基本统计量

基本统计量及其实现
基本概念

样本数据:从研究的对象(总体)X中得到的n个观测值
x 1 , x 2 , ... , x n x_{1},x_{2},\dots,x_{n} x1,x2,...,xn

称为样本数据,简称数据,n称为样本容量

样本数据的统计量,能够提取数据中有价值的信息

  • 数据分布的集中位置
  • 数据分布的分散程度
  • 数据分布的形状

集中位置统计量

集中位置(均值,中位数,分位数,三均值)

  1. 均值:描述数据取值的平均水平
    x ˉ = 1 n ∑ i = 1 n x i \bar{x}=\frac{1}{n}\sum_{i=1}^{n}x_{i} xˉ=n1i=1∑nxi
  • 样本均值使用了所有样本数据信息,准确性高
  • 样本均值易受异常值的影响而不稳健
  1. 中位数:将原数据,按照从小到大顺序排列,中位数可定义为
    M = { x n + 1 2 n 为奇数 1 2 ( x n 2 + x ( 1 + n 2 ) ) n 为偶数 M=\left\{\begin{matrix} x_{\frac{n+1}{2}}\qquad n为奇数 \\ \frac{1}{2}\left( x_{\frac{n}{2}}+x_{(1+ \frac{n}{2})} \right)\qquad n为偶数 \end{matrix}\right. M={x2n+1n为奇数21(x2n+x(1+2n))n为偶数
    中位数能描述数据的中心位置
  • 若数据的分布是对称的,则中位数与均值比较接近
  • 若数据分布为偏态,则中位数与均值存在较大差异
  • 中位数受异常值的影响较小,具有较好的稳健性
  1. p分位数:
    M p = { x ( [ n p ] + 1 ) n p 不是整数 1 2 ( x ( n p ) + x ( n p + 1 ) ) n p 是整数 M_{p}=\left\{\begin{matrix} x_{([np]+1)}\qquad np不是整数 \\ \frac{1}{2}\left( x_{(np)}+x_{(np+1)} \right)\qquad np是整数 \end{matrix}\right. Mp={x([np]+1)np不是整数21(x(np)+x(np+1))np是整数
    其中, [ n p ] [np] [np]表示np的整数部分
  • p=0.5时, M 0.5 = M ( 中位数 ) M_{0.5}=M(中位数) M0.5=M(中位数)
  • 实际应用中,0.75分位数与0.25分位数比较常用,分别称为上下四分位数,记作 Q 3 , Q 1 Q_{3},Q_{1} Q3,Q1
  • 在描述数据集中位置的效果方面,均值使用了数据的全部信息,中位数只用了部分信息(位置信息),因此通常情况下均值比中位数有效。当数据右异常值时,中位数比较稳健
  1. 三均值:
    M ^ = 1 4 M 0.25 + 1 2 M 0.5 + 1 4 M 0.75 \hat{M}=\frac{1}{4}M_{0.25}+\frac{1}{2}M_{0.5}+\frac{1}{4}M_{0.75} M^=41M0.25+21M0.5+41M0.75
    其中, M p M_{p} Mp等于分位数
Matlab程序实现(集中位置)
  1. 均值命令mean:

    m = mean(X)

其中,输入X为样本数据,输出m为样本均值

X如果是向量,m就是向量的均值;是矩阵,m就是每一列的均值,返回一个行向量

  1. 中位数命令:median:

    md = median(X)

其中,输入X为样本数据,输出m为样本中位数

  1. 分位数命令prctile:

    mp = prctile(X, P)

其中,输入X为样本数据,P为介于0至100间的整数,输出mp为P%分位数

  1. 三均值:

    w = [0.25, 0.5, 0.75]; %输入权向量w
    sm = w * prctile(X, [25;50;75]); %计算X三均值

返回的是三个分位数组成的列向量,乘上w,得到三均值结果

例子


X = [53.93 50.98 15.48 256.00 65.41
	44.92 40.38 14.99 211.07 151.14
	148.19 145.54 17.10 842.09 677.52
	293.86 279.86 28.80 1238.01 10.5.67
	86.96 74.64 12.91 302.67 299.32
	791.50 680.96 77.80 3298.56 3252.88
	598.92 546.67 35.60 2291.09 2099.21];

m = mean(X);     %均值
md = median(X);  %中位数
w = [0.25, 0.5, 0.75];
sm = w * prctile(X, [25;50;75]);   %三均值
[m; md; sm]       %显示结果


分散程度统计量

分散程度(方差、标准差、变异系数、极差)

  1. 方差:描述数据取值的分散程度
    s 2 = 1 n − 1 ∑ i = 1 n ( x i − x ˉ ) 2 s^{2}=\frac{1}{n-1}\sum_{i=1}^{n}(x_{i}-\bar{x})^{2} s2=n−11i=1∑n(xi−xˉ)2

  2. 标准差:方差的算术平方根称为标准差
    s = s 2 = 1 n − 1 ∑ i = 1 n ( x i − x ˉ ) 2 s=\sqrt{ s^{2} }=\sqrt{\frac{1}{n-1}\sum_{i=1}^{n}(x_{i}-\bar{x})^{2} } s=s2 =n−11i=1∑n(xi−xˉ)2

    标准化变换:
    x i − x ˉ s \frac{x_{i}-\bar{x}}{s} sxi−xˉ

  3. 变异系数:刻画数据相对分散性的指标
    v = s x ˉ ,或, v = s ∣ x ˉ ∣ v=\frac{s}{\bar{x}},或,v=\frac{s}{|\bar{x}|} v=xˉs,或,v=∣xˉ∣s

    是相对量,相对于本身取值水平

  4. 极差:刻画数据取值变化的跨度
    R = x ( n ) − x ( 1 ) R=x_{(n)}-x_{(1)} R=x(n)−x(1)

Matlab实现(分散程度)
  1. 方差命令var:

    s = var(x)

其中,输入x为样本数据,输出s为样本方差

  1. 标准差命令std;

    d = std(x)

其中,输入x为样本数据,输出d为样本标准差

  1. 变异系数实现命令:

    v = std(x)./mean(x),或,v = std(x)./abs(mean(x))

其中,输入x为样本数据,输出v为变异系数

  1. 极差命令:

    r = range(x);或,r = max(x) - min(x)

其中,输入x为样本数据,输出r为样本极差

例子
X = [53.93 50.98 15.48 256.00 65.41
	44.92 40.38 14.99 211.07 151.14
	148.19 145.54 17.10 842.09 677.52
	293.86 279.86 28.80 1238.01 10.5.67
	86.96 74.64 12.91 302.67 299.32
	791.50 680.96 77.80 3298.56 3252.88
	598.92 546.67 35.60 2291.09 2099.21];

s = std(x);         %标准差
v = std(x)./abs(mean(x));    %变异系数
r = max(x) - min(x);         %极差
[s; v; r]           %显示结果


分布形状统计量

分布形状(偏度,峰度)

  1. 偏度:衡量分布的不对称程度或偏斜程度的指标
    p d = 1 n ∑ i = 1 n ( x i − x ˉ ) 3 ( 1 n ∑ i = 1 n ( x i − x ˉ ) 2 ) 2 p_{d}=\frac{\frac{1}{n}\sum_{i=1}^{n}(x_{i}-\bar{x})^{3}}{\left( \sqrt{ \frac{1}{n}\sum_{i=1}^{n}(x_{i}-\bar{x})^{2} } \right)^{2}} pd=(n1∑i=1n(xi−xˉ)2 )2n1∑i=1n(xi−xˉ)3
  • 若 p d = 0 p_{d}=0 pd=0,数据分布左右对称,众数,中位数和均值比较一致(正态分布的偏度 p d = 0 p_{d}=0 pd=0)
  • 若 p d > 0 p_{d}>0 pd>0,数据分布右偏态,(数据位于均值左边的比右边的多)
  • 若 p d < 0 p_{d}<0 pd<0,数据分布左偏态,(数据位于均值右边的比左边的多)
  1. 峰度:衡量数据分布尖峭程度和(或)尾部粗细程度的指标
    f d = 1 n ∑ i = 1 n ( x i − x ˉ ) 4 ( 1 n ∑ i = 1 n ( x i − x ˉ ) 2 ) 2 f_{d}=\frac{\frac{1}{n}\sum_{i=1}^{n}(x_{i}-\bar{x})^{4}}{\left( \sqrt{ \frac{1}{n}\sum_{i=1}^{n}(x_{i}-\bar{x})^{2} } \right)^{2}} fd=(n1∑i=1n(xi−xˉ)2 )2n1∑i=1n(xi−xˉ)4
  • 正态分布的峰度 f d = 3 f_{d}=3 fd=3
  • 若 f d > 3 f_{d}>3 fd>3,数据分布尖峭和(或)后尾
  • 若 f d < 3 f_{d}<3 fd<3,数据分布矮胖和(或)细尾
Matlab程序实现(偏度与峰度)
  1. 偏度命令skewness:

    s = skewness(x)

其中,输入x为样本数据,输出s为样本偏度

  1. 峰度命令kurtosis:

    k = kurtosis(x)

其中,输入x为样本数据,输出k为样本峰度

Matlab程序实现
rng('default')
x1 = normrnd(0, 1, 1, 100);  %生成标准正态分布1x100随机数
x2 = frnd(1, 5, 1, 100);     %生成F(1,5)分布1x100随机数
%偏度
s_n = skewness(x1)
s_f = skewness(x2)
%峰度
k_n = kurtosis(x1)
k_f = kurtosis(x2)

常见概率分布的实现

基础知识

连续型随机变量的概率密度函数 p ( x ) p(x) p(x),满足
p ( x ) > 0 , 且 , ∫ − ∞ ∞ p ( x ) = 1 p(x)>0,且,\int_{-\infty}^{\infty}p(x)=1 p(x)>0,且,∫−∞∞p(x)=1

由概率密度函数 p ( x ) p(x) p(x)可以定义概率分布函数
F ( x ) = ∫ − ∞ x p ( t ) d t F(x)=\int\limits_{-\infty}^{x}p(t)dt F(x)=−∞∫xp(t)dt

  • F ( x ) F(x) F(x)单调不减
  • 0 ≤ F ( x ) ≤ 1 0\le F(x)\le 1 0≤F(x)≤1
  • F ( − ∞ ) = 0 , F ( ∞ ) = 1 F(-\infty)=0,F(\infty)=1 F(−∞)=0,F(∞)=1

对应给定的 F i ∈ [ 0 , 1 ] F_{i}\in [0,1] Fi∈[0,1],求 x i x_{i} xi使得 F ( x i ) = F i F(x_{i})=F_{i} F(xi)=Fi,即逆分布函数问题
x i = F − 1 ( F i ) x_{i}=F^{-1}(F_{i}) xi=F−1(Fi)

离散型随机变量的分布律,概率分布函数

常见概率分布函数及其实现

常见的几种概率分布

正态分布:norm

指数分布:exp

泊松分布:poiss
β \beta β分布:beta

weibull分布:weib
x 2 x^{2} x2分布:chi2

t分布:t

F分布:F

需要实现的几种函数功能

概率密度函数:pdf

概率分布函数:cdf

逆概率分布函数:inv

随机数生成函数:rnd

密度函数

正态分布 N ( m u , s i g m a 2 ) N(mu, sigma^{2}) N(mu,sigma2)

p = normpdf(x, mu, sigma)

x,自变量

mu,均值

sigma,标准差

函数功能:求正态分布在x点处的概率密度函数值


  • 画出正态分布 N ( 0 , 1 ) N(0, 1) N(0,1)和 N ( 0 , 2 2 ) N(0, 2^{2}) N(0,22)的概率密度函数图形

    x = -6:0.01:6;
    y = normpdf(x); %mu=0,sigma=1时可以省略
    z = normpff(x, 0.2);
    plot(x, y, 'b:', x, z, 'r-')

x,为-6到6的一个等差数列,公差是0.01

y,是x向量每一个点处的标准正态分布的概率密度函数值

z,是均值是0,标准差是2的,x向量每一个点处的正态分布的概率密度函数值

plot,可视化

概率分布函数
P = normcdf(x, mu, sigma)

函数功能:给定x,求概率 P = P ( X ≤ x ) P=P(X\le x) P=P(X≤x)


  • 假设正态分布 X ∼ N ( 0 , 1 ) X \sim N(0, 1) X∼N(0,1),求概率 P ( − 1 < x < 1 ) = F ( 1 ) − F ( ∗ 1 ) P(-1<x<1)=F(1)-F(*1) P(−1<x<1)=F(1)−F(∗1)

    P = normcdf(1) - normcdf(-1)

得P=0.6827

逆概率分布函数
x = norminv(P, mu, sigma)

函数功能:给定概率P,求x使得 P ( X ≤ x ) = P P(X\le x)=P P(X≤x)=P


  • 求标准正态分布的上 α \alpha α分位点 μ a ( α = 0.05 ) \mu_{a}(\alpha=0.05) μa(α=0.05)

    u = norminv(1-0.05, 0, 1)

得u = 1.6449

随机数生成
x = normrnd(mu, sigma, m, n)

函数功能:生成mxn的服从 N ( m u , s i g m a 2 ) N(mu, sigma^{2}) N(mu,sigma2)的随机数矩阵


  • 产生2x3的服从正态分布 N ( 1 , 3 2 ) N(1, 3^{2}) N(1,32)的随机数矩阵

    x = normrnd(1, 3, 2, 3)

  • 均值为1

  • 标准差为3

  • 生成2行3列对应的随机数矩阵

    x =
    0.3851 5.4691 5.2516
    0.6276 5.2271 3.0145

Matlab更多分布选择
'beta','bino','chi2','exp','ev','f','gam','gev',
'gp','geo','hyge','logn','nbin','ncf','nct','ncx2',
'norm','poiss','rayl','t','unif','unid','wbl'

随机分布函数功能的实现称为专用函数方式

通用函数方式实现

  1. 概率密度函数

    pdf('name', x, param)

name,指定分布

x,自变量

param,分布对应的参数

函数功能:实现参数为param的name分布在x点的概率密度函数值

  1. 概率分布函数

    cdf('name', x, param)

函数功能:实现参数为param的name分布在x点的概率分布函数值

  1. 逆概率分布函数

    icdf('name', p, param)

函数功能:实现参数为param的name分布在p点的逆概率分布函数值

  1. 随机数生成函数

    random('name', param, m, n)

函数功能:实现服从参数为param的name分布的随机数(mxn)

相关推荐
Desire.9841 小时前
Python 数学建模——灰色关联度分析
python·数学建模·灰色关联度
梦想科研社10 小时前
【无人机设计与控制】四旋翼无人机俯仰姿态保持模糊PID控制(带说明报告)
开发语言·算法·数学建模·matlab·无人机
数模竞赛Paid answer13 小时前
2017年国赛高教杯数学建模A题CT系统参数标定及成像解题全过程文档及程序
数学建模·全国大学生数学建模竞赛·高教杯
liangbm313 小时前
数学建模笔记——动态规划
笔记·python·算法·数学建模·动态规划·背包问题·优化问题
数模竞赛Paid answer13 小时前
2018年国赛高教杯数学建模D题汽车总装线的配置问题解题全过程文档及程序
数学建模·全国大学生数学建模竞赛·数学建模数据分析
Trouvaille ~2 天前
【Python篇】NumPy完整指南(上篇):掌握数组、矩阵与高效计算的核心技巧
python·机器学习·数学建模·数据分析·numpy·科学计算·大数据处理
Desire.9842 天前
Python 数学建模——ARMA 时间序列分析
python·数学建模·时间序列分析·arma
周末不下雨3 天前
数学建模——熵权+TOPSIS+肘部法则+系统聚类
算法·数学建模·聚类
yz_518 Nemo3 天前
2024年数学建模比赛题目及解题代码
算法·数学建模
ymchuangke3 天前
评价类——熵权法(Entropy Weight Method, EWM),完全客观评价
人工智能·python·算法·机器学习·数学建模