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

R语言贝叶斯Poisson泊松-正态分布模型分析职业足球比赛进球数

原文链接:http://tecdat.cn/?p=23099

在本文关于如何在R中进行贝叶斯分析点击文末“阅读原文”获取完整代码数据)。

我们介绍贝叶斯分析,这个例子是关于职业足球比赛的进球数。

相关视频

模型

首先,我们认为职业足球比赛的进球数来自分布e976c302e71f4fee13d839d4c3b0f55b.png,其中θ是平均进球数。现在假设我们用一位足球专家的意见来得出足球比赛的平均进球数,即参数θ,我们得到:e2f4e9d12f60edb12f41684d9a343628.png

curve(dnorm(x, 2.5, 0.2), from = -2, to = 8,...)

ac07492c09939eca7dd2784227c05b4b.png


点击标题查阅往期内容

3614c1bdba2202013d21270a6a1e72db.png

R语言泊松Poisson回归模型分析案例

outside_default.png

左右滑动查看更多

outside_default.png

01

546f3e95875451969b5b97d4854bfe23.jpeg

02

47d963b9f9123d7969ae8957f659a2fc.png

03

9816bc7c2459ee1c2108dd63e1b12954.jpeg

04

fe1dd8a77f95c8ed8712e6e9f3c57ebe.jpeg

我们想知道什么?

在这种情况下,我们想知道θ的后验分布是什么样子的,这个分布的平均值是什么。为了做到这一点,我们将在三种情况下分析:

我们有1个观察值x=1,来自分布为22f1c3aaba869046a6c97324df7ba331.png的总体。
我们有3个观测值x=c(1,3,5),来自一个具有a583713fcfc6e3da34128beae2dc1fdd.png分布的总体。
我们有10个观测值x=c(5,4,3,4,3,2,7,2,4,5),来自一个具有0bb1667c50229a9f673fc37cd2238cd4.png分布的总体。

理论方法

在这里,我想告诉你贝叶斯分析是如何分析的。首先,我们有一个来自具有未知参数θ的泊松分布的人口的似然函数。 

04c30248c2fc825c8784084be369d94e.png

我们知道参数θ的先验分布p(θ)是由以下公式给出的。

9113defc8e11b4709799eb1f7ffd01ed.png

最后,θ的后验分布为。

f43ea3b6849ef05dbce9cb865db4ff2e.png

其中常数C的计算方法如下。

aa9ea7acce50199dbe9c073fe800cfe1.png

而后验分布E(θ|x)的平均值由以下公式给出。

84aa9b4bc5b984defe4996a339fd36c3.png

计算方法

在这里,你将学习如何在R中使用蒙特卡洛模拟来回答上面提出的问题。对于这三种情况,你将遵循以下步骤。

1. 定义数据

首先,你需要根据方案定义数据。

x <- 1 #第一种情况

2. 计算常数C

现在使用蒙特卡洛模拟来计算积分。为此,有必要从先验分布中产生N=10000个值θi,并在似然函数c309e07afd130dab9aeba78a66e0cd25.png中评估它们。最后,为了得到C,这些值被平均化。R中的代码如下。

N <- 100000  # 模拟值的数量
rnorm(n=N, mean = 2.5, sd = 0.2) #先验分布
prod(dpois(x=x, lambda = theta)) #似然函数

8b82240973b8780d02f0223c69512990.png

3. 寻找后验分布

计算完C后,你可以得到后验分布,如下所示。

fvero(theta) * dnorm(x=theta) / C

4. 计算后验分布的平均数

最后你可以使用蒙特卡洛模拟计算积分来获得后验分布的平均值。

integral <- mean(aux)
posterior <- integral/C

ee250cf31ef67bd6de9db55d09235db3.png

结果

如前所述,上面介绍的代码用于所有三种情况,唯一根据情况变化的是x。在这一节中,我们将为每种情况展示一张图,其中包含θ的先验和后验分布、后验分布的平均值(蓝色虚线)和观测值(粉红色的点)。

第一种情况

curve(dnorm(x, 2.5, 0.2), col=4,,x=x, y=rep(0, length(x)),
line,v = mposterior,legend=c("topright", legend=c("后验", "先验"),)

655ce971b02d65f75a1c5d568d1c24cb.png

第二种情况

43cc091a0732d55d10c3302b7574bdac.png

第三种情况

e42780fd9c8dd6255d289d569ed4f10a.png

结论

从结果中我们可以得出这样的结论:当我们有很少的观测数据时,如图1和图2,由于缺乏样本证据,后验分布将倾向于类似于先验分布。相反,当我们有大量的观测数据时,如图3,后验分布将偏离先验分布,因为数据将有更大的影响。

我希望你喜欢这篇文章并了解贝叶斯统计。我鼓励你用其他分布运行这个程序。


f238ddc89f7cfbe0f558e8615ecba45c.png

点击文末“阅读原文”

获取全文完整资料。

本文选自《R语言贝叶斯Poisson泊松-正态分布模型分析职业足球比赛进球数》。

点击标题查阅往期内容

PYTHON用户流失数据挖掘:建立逻辑回归、XGBOOST、随机森林、决策树、支持向量机、朴素贝叶斯和KMEANS聚类用户画像

MCMC的rstan贝叶斯回归模型和标准线性回归模型比较

数据分享|Python决策树、随机森林、朴素贝叶斯、KNN(K-最近邻居)分类分析银行拉新活动挖掘潜在贷款客户

贝叶斯分位数回归、lasso和自适应lasso贝叶斯分位数回归分析免疫球蛋白、前列腺癌数据

R语言贝叶斯METROPOLIS-HASTINGS GIBBS 吉布斯采样器估计变点指数分布分析泊松过程车站等待时间

R语言Gibbs抽样的贝叶斯简单线性回归仿真分析

python贝叶斯随机过程:马尔可夫链Markov-Chain,MC和Metropolis-Hastings,MH采样算法可视化

Python贝叶斯推断Metropolis-Hastings(M-H)MCMC采样算法的实现

Metropolis Hastings采样和贝叶斯泊松回归Poisson模型

Matlab用BUGS马尔可夫区制转换Markov switching随机波动率模型、序列蒙特卡罗SMC、M H采样分析时间序列

R语言RSTAN MCMC:NUTS采样算法用LASSO 构建贝叶斯线性回归模型分析职业声望数据

R语言BUGS序列蒙特卡罗SMC、马尔可夫转换随机波动率SV模型、粒子滤波、Metropolis Hasting采样时间序列分析

R语言Metropolis Hastings采样和贝叶斯泊松回归Poisson模型

R语言贝叶斯MCMC:用rstan建立线性回归模型分析汽车数据和可视化诊断

R语言贝叶斯MCMC:GLM逻辑回归、Rstan线性回归、Metropolis Hastings与Gibbs采样算法实例

R语言贝叶斯Poisson泊松-正态分布模型分析职业足球比赛进球数

R语言用Rcpp加速Metropolis-Hastings抽样估计贝叶斯逻辑回归模型的参数

R语言逻辑回归、Naive Bayes贝叶斯、决策树、随机森林算法预测心脏病

R语言中贝叶斯网络(BN)、动态贝叶斯网络、线性模型分析错颌畸形数据

R语言中的block Gibbs吉布斯采样贝叶斯多元线性回归

Python贝叶斯回归分析住房负担能力数据集

R语言实现贝叶斯分位数回归、lasso和自适应lasso贝叶斯分位数回归分析

Python用PyMC3实现贝叶斯线性回归模型

R语言用WinBUGS 软件对学术能力测验建立层次(分层)贝叶斯模型

R语言Gibbs抽样的贝叶斯简单线性回归仿真分析

R语言和STAN,JAGS:用RSTAN,RJAG建立贝叶斯多元线性回归预测选举数据

R语言基于copula的贝叶斯分层混合模型的诊断准确性研究

R语言贝叶斯线性回归和多元线性回归构建工资预测模型

R语言贝叶斯推断与MCMC:实现Metropolis-Hastings 采样算法示例

R语言stan进行基于贝叶斯推断的回归模型

R语言中RStan贝叶斯层次模型分析示例

R语言使用Metropolis-Hastings采样算法自适应贝叶斯估计与可视化

R语言随机搜索变量选择SSVS估计贝叶斯向量自回归(BVAR)模型

WinBUGS对多元随机波动率模型:贝叶斯估计与模型比较

R语言实现MCMC中的Metropolis–Hastings算法与吉布斯采样

R语言贝叶斯推断与MCMC:实现Metropolis-Hastings 采样算法示例

R语言使用Metropolis-Hastings采样算法自适应贝叶斯估计与可视化

视频:R语言中的Stan概率编程MCMC采样的贝叶斯模型

R语言MCMC:Metropolis-Hastings采样用于回归的贝叶斯估计

907ad7f18e768e785ca47a459bc8c609.png

0325c4992478d5d9b6eaa21feed94040.jpeg

5c1f4df47fac10782e33e44dfe7e235e.png

相关文章:

  • Matplotlib入门[05]——注释与标签
  • HarmonyOS/OpenHarmony应用开发-FA模型综述
  • Vue中的diff算法深度解析
  • redis常用数据结构基本命令
  • 公路交叉数(POJ3067)-树状数组解决逆序对
  • k8s删除node
  • 使用SpringBoot快速构建Web API
  • vue 如何获取路由详细内容信息
  • 【数据库系统】数据更新
  • 【视觉高级篇】23 # 如何模拟光照让3D场景更逼真?(上)
  • itss是什么证书
  • 排序算法-计数排序、桶排序、基数排序
  • postgresql 11.2+gis+pgpool 4.2.2 离线安装步骤
  • 项目管理(如何进行项目风险管理)
  • Watch事件介绍_java培训
  • Debezium系列之:快速了解Debezium 2.0.0.Final新的特性
  • RocketMq: Windows环境-单机部署和多种主从集群场景部署
  • 三家前装出货超2万台,激光雷达明年「放量」是大概率事件
  • 如何在Windows AD域中驻留ACL后门
  • JavaScript大作业 制作简单的程序员个人博客网站(web前端网页制作课作业)
  • 电加热油锅炉工作原理_电加热导油
  • 大型电蒸汽锅炉_工业电阻炉
  • 燃气蒸汽锅炉的分类_大连生物质蒸汽锅炉
  • 天津市维修锅炉_锅炉汽化处理方法
  • 蒸汽汽锅炉厂家_延安锅炉厂家
  • 山西热水锅炉厂家_酒店热水 锅炉
  • 蒸汽锅炉生产厂家_燃油蒸汽发生器
  • 燃煤锅炉烧热水_张家口 淘汰取缔燃煤锅炉
  • 生物质锅炉_炉
  • 锅炉天然气_天燃气热风炉