大数跨境
0
0

BayesianNetworks包-贝叶斯网络建模和预测

BayesianNetworks包-贝叶斯网络建模和预测 R语言数据分析指南
2024-07-15
0

欢迎关注R语言数据分析指南

本节来介绍一款可用于贝叶斯网络建模和预测流程的R包「BayesianNetworks」。该包内容丰富作者配有详细的案例文档,使用过程也非常的简单明了,更多详细内容请参考作者的官方文档。

官方文档

https://pakillo.github.io/BayesianNetworks/

安装R程序包

library(tidyverse)

install.packages("cmdstanr", repos = c('https://stan-dev.r-universe.dev', getOption("repos")))

remotes::install_github("Pakillo/BayesianNetworks")
library(BayesianNetworks)
library(cmdstanr)
cmdstanr::install_cmdstan() #此程序包49M安装容易失败
# 安装完后会出现cmdstan的路径写入下方代码,以实际为准
set_cmdstan_path("/Users/xxx/.cmdstan/cmdstan-2.35.0")

准备数据

data(web)
plot_counts_obs(web, sort = FALSE# 可视化原始数据集 web 中的计数,不进行排序。
# 准备数据以供模型使用。mat 参数是输入的矩阵(此处为 web 数据集),sampl.eff 参数指定采样效率,这里为每行设置了20。

dt <- prepare_data(mat = web, sampl.eff = rep(20, nrow(web)))

设置并拟合模型

set.seed(1)
options(mc.cores = 4#设置并行计算使用的核心数,这里使用4个核心
fit <- fit_model(dt, refresh = 0)

检查模型

check_model(fit, data = dt)

获取后验分布

post <- get_posterior(fit, data = dt)

plot_interaction_prob(post) # 可视化交互概率

预测计数并可视化

pred.df <- predict_counts(fit, data = dt) # 使用拟合模型 fit 和数据 dt 进行预测,生成预测计数
plot_counts_pred(pred.df, sort = FALSE# 可视化预测的计数,不进行排序
plot_counts_pred_obs(pred.df, data = dt) # 将预测的计数和观察到的计数进行对比并可视化

绘制残差

plot_residuals(pred.df, data = dt, sort = FALSE)

关注下方公众号下回更新不迷路

本节介绍到此结束,有需要学习R数据可视化的朋友,欢迎到淘宝店铺:R语言数据分析指南,购买小编的R语言可视化文档(2024版),购买将赠送2023年的绘图文档内容。目前(2023+2024)已经更新上传约150+案例内容,每个案例都附有相应的数据和代码,2024年更新的绘图内容会在交流群内同步更新。

2024更新的绘图内容将同时包含数据+代码+注释文档+文档清单,小编只分享案例文档,不额外回答问题,无答疑服务。 注:2023文档无清单文件

2024更新文档清单

淘宝店铺(R语言数据分析指南)

2024年已更新案例图展示

2023年案例图展示


【声明】内容源于网络
0
0
R语言数据分析指南
R语言重症爱好者,喜欢绘制各种精美的图表,喜欢的小伙伴可以关注我,跟我一起学习
内容 1180
粉丝 0
R语言数据分析指南 R语言重症爱好者,喜欢绘制各种精美的图表,喜欢的小伙伴可以关注我,跟我一起学习
总阅读410
粉丝0
内容1.2k