NBA直播吧

(拓端数据)如何在R中进行贝叶斯分析?

在这篇关于如何在R中进行贝叶斯分析的文章中,我们介绍了贝叶斯分析,这个例子是关于职业足球比赛中的进球数。

模型

首先,我们认为职业足球比赛的进球数来自于分布

,其中 θ 是平均进球数。 现在假设我们根据足球专家的意见求出足球比赛的平均进球数,即参数θ,我们得到:

曲线(dnorm(x,2.5,0.2)足球比赛预测模型,从= -2足球比赛预测模型,到= 8,...)

足球智能模型预测app_足球模型数据_足球比赛预测模型

我们想知道什么?

在这种情况下,我们想知道 θ 的后验分布是什么样的以及该分布的均值是多少。 为此,我们将分析三种情况:

我们从分布中得到 1 个观测值 x=1

全面的。

我们有 3 个观测值 x=c(1,3,5),来自 a

人口分布。

我们有 10 个观测值 x=c(5,4,3,4,3,2,7,2,4,5)足球比赛预测模型,来自

人口分布。

理论方法

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

足球智能模型预测app_足球比赛预测模型_足球模型数据

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

足球比赛预测模型_足球智能模型预测app_足球模型数据

最后,θ 的后验分布为。

常数C的计算方法如下。

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

计算方法

在这里,您将学习如何在 R 中使用蒙特卡洛模拟来回答上述问题。 对于这三种情况,您将按照以下步骤操作。

1. 定义数据

首先,您需要根据模式定义数据。

2.计算常数C

现在使用蒙特卡罗模拟来计算积分。为此,需要从先验分布生成 N = 10000 个值 θi 并将它们用于似然函数

评价他们。 最后,对这些值进行平均,得到C。 R中的代码如下。

rnorm(n=N,mean=2.5,sd=0.2)#先验分布

prod(dpois(x=x, = theta)) #似然函数

足球模型数据_足球智能模型预测app_足球比赛预测模型

3.求后验分布

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

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

4.计算后验分布的均值

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

足球比赛预测模型_足球模型数据_足球智能模型预测app

结果

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

第一种情况

曲线(dnorm(x, 2.5, 0.2), col=4,,x=x, y=rep(0, (x)),

line,v = ,=c("", =c("后", "前"),)

足球模型数据_足球智能模型预测app_足球比赛预测模型

第二种情况

足球比赛预测模型_足球模型数据_足球智能模型预测app

第三种情况

足球比赛预测模型_足球智能模型预测app_足球模型数据

综上所述

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

我希望您喜欢这篇文章并了解贝叶斯统计。 我鼓励您在其他发行版上运行该程序。

足球比赛预测模型_足球智能模型预测app_足球模型数据

最流行的见解

1.R语言多元逻辑回归应用案例

2.面板平滑传递回归(PSTR)分析案例的实现

3. 偏最小二乘回归(PLSR)和主成分回归(PCR)

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

5.R语言回归中的拟合优度检验

6. R语言中LASSO回归、Ridge回归和Net模型的实现

7.R语言实现逻辑回归

8.使用线性回归来预测股票价格

9、R语言如何计算生存分析和Cox回归中的IDI和NRI指标?

标签: 足球比赛预测模型