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

MATLAB计算与建模常见函数:3.参数估计

参数估计

参数估计是统计推断的一种,根据从总体中抽取的随机样本估计总体分布中未知参数的过程;
参数估计又分为:点估计、区间估计

  • 点估计:用单个数值作为参数的估计,使用最多的包括最大似然估计和矩法
  • 区间估计:依据抽取的样本,根据一定的正确度与精确度要求构造出适当的区间作为总体分布的未知参数或参数函数的真值所在范围的估计

通过一个例子看一下什么是参数估计:
已知一组数满足正态分布,反过来求解参数u和σ的过程称为参数估计。
例题
观测某型号20辆汽车消耗10L汽油的行驶里程数据如下:

59.655.256.655.860.257.459.856.055.857.4
56.854.459.057.056.060.058.259.659.253.8

假设行驶里程满足正态分布,用normfit函数求平均行驶里程的95%置信区间。

x= [59.6 55.2 56.6 55.8 60.2 57.4 59.8 56.0 55.8 57.4 56.8 54.4 59.0 57.0 56.0 56.0 59.6 59.2 53.8];
a=0.05;
[muhat,sigmahat,muci,sigmaci] = normfit(x,a);

常见分布的参数估计函数及其调用格式

分布调用格式
正态分布[muHat,sigmaHat,muCI,sigmaCI]=normfit(x,alpha)
正态对数似然函数nlogL=normlike(params,x,censoring)
最大似然估计phat=mle(data.‘distribution’,dist)
贝塔分布[phat,pci]=betafit(data,alpha)
二项分布[phat,pci]=binofit(x,n,alpha)
指数分布[muhat,muci]=expfit(data,alpha)
泊松分布[lambdahat,lambdaci]=poissfit(data)
均匀分布[ahat,bhat,ACI,BCI]=unifit(data,alpha)
卡方分布[phat,pci]=chisquarefit(data,df,alpha)

点估计:

点估计就是用单个数值作为参数的估计,目前使用最多的是最大似然估计法和矩法。在此介绍最大似然估计法。

最大似然估计(maximum likehood estimates):

在待估参数的可能取值范围内,挑选使似然函数值最大时对应的参数值为最大似然估计量。

MATLAB的最大似然估计函数为:

phat=mle(data)
  • 利用data指定的样本,返回正态分布的最大似然估计;
phat mle(data,‘distribution’,dist)
  • 指定分布类型为dist;

例题:
依然是上述油耗问题,假设行驶里程数据服从正态分布,用最大似然估计法估计总体的均值和方差

x= [59.6 55.2 56.6 55.8 60.2 57.4 59.8 56.0 55.8 57.4 56.8 54.4 59.0 57.0 56.0 56.0 59.6 59.2 53.8];
a=0.05;
phat=mle(x,'distribution','normal');
muhatmle=phat(1);%均值
sigma2hatmle=phat(2)^2;%方差

区间估计:

求参数的区间估计,首先求出该参数的点估计,然后构造一个含有该参数的随机变量,并根据一定的置信水平求该估计值的范围。

MATLAB中使用mle函数进行区间估计时的调用格式为:

phat=mle(data,‘distribution’,dist,‘Alpha’,alpha)
  • 指定分布类型为dist

例题:
依然是油耗问题,假设行驶里程数据服从正态分布,求平均行驶里程的95%置信区间。

x= [59.6 55.2 56.6 55.8 60.2 57.4 59.8 56.0 55.8 57.4 56.8 54.4 59.0 57.0 56.0 56.0 59.6 59.2 53.8];
a=0.05;
[phat,phi]=mle(x,'distribution','normal','Alpha',a);
muhatmle=phat(1);%均值
sigma2hatmle=phat(2)^2;%方差

%置信区间
muhatci=muhatmle+norminv(0.5-a/2)*sigma2hatmle/sqrt(length(x));
muhatci=muhatmle-norminv(0.5-a/2)*sigma2hatmle/sqrt(length(x));

http://www.kler.cn/news/335465.html

相关文章:

  • 霓虹灯数字时钟(可复制源代码)
  • 智能手表(Smart Watch)项目
  • gets和puts
  • 146. LRU 缓存【 力扣(LeetCode) 】
  • Bellman-Ford算法和SPFA算法
  • 【python面试宝典7】线程池,模块和包
  • 【C++驾轻就熟】vector深入了解及模拟实现
  • 【GeekBand】C++设计模式笔记6_Decorator_装饰模式
  • EFCore postgresql 批量删除、插入、更新
  • Java - Spring框架 (ios+aop)
  • c基础面试题
  • 如何创建一个docker,给它命名,且下次重新打开它
  • 数据结构——List接口
  • SpringBoot中的数据库查询及Mybatis和MybatisPlus的使用
  • Windows环境 源码编译 FFmpeg
  • 828华为云征文|部署开源超轻量中文OCR项目 TrWebOCR
  • JavaWeb的小结02
  • 【无人水面艇路径跟随控制2】(C++)USV代码阅读: SetOfLos 类的从路径点和里程计信息中计算期望航向
  • 数据结构:将复杂的现实问题简化为计算机可以理解和处理的形式
  • 530、二叉搜索树的最小绝对差