请选择 进入手机版 | 继续访问电脑版
楼主: xingzhaoh
3392 10

[问答] 使用R2WinBUGS拟合后怎么绘制后验概率密度 [推广有奖]

副教授

21%

还不是VIP/贵宾

-

威望
0
论坛币
3407 个
通用积分
13.9254
学术水平
5 点
热心指数
6 点
信用等级
3 点
经验
601 点
帖子
427
精华
0
在线时间
703 小时
注册时间
2011-9-14
最后登录
2023-11-17

xingzhaoh 发表于 2014-12-26 09:18:16 |显示全部楼层 |坛友微信交流群
相似文件 换一批

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
使用R2WinBUGS进行线性拟合后,
如何绘制验概率密度(Posterior probability density)
请问大神用哪个语句?
非常感谢
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:R2WinBUGS winbugs WINBUG 后验概率 概率密度 如何

回帖推荐

psyhuangmm 发表于11楼  查看完整内容

这个可以具体说,qq2356948540

soccy 发表于6楼  查看完整内容

https://sites.google.com/site/doingbayesiandataanalysis/software-installation

soccy 发表于5楼  查看完整内容

http://www.jstatsoft.org/v12/i03/ http://people.orie.cornell.edu/davidr/or678/r2winbugs/index.html

soccy 发表于7楼  查看完整内容

WinBUGS局限性很明显,如果刚开始学习bayesian分析,不如直接从Stan入手。

soccy 发表于3楼  查看完整内容

用coda包。
wwwujl 发表于 2014-12-28 09:34:33 |显示全部楼层 |坛友微信交流群
没有在R中调用过,直接使用的WinBUGS,设定监测点,给出后验概率参数。

使用道具

soccy 发表于 2014-12-28 09:41:34 |显示全部楼层 |坛友微信交流群
用coda包。

使用道具

xingzhaoh 发表于 2014-12-30 13:57:41 |显示全部楼层 |坛友微信交流群
soccy 发表于 2014-12-28 09:41
用coda包。
谢谢,能给一个示例吗?看看怎么做的

使用道具

soccy 发表于 2014-12-31 00:17:10 |显示全部楼层 |坛友微信交流群
http://www.jstatsoft.org/v12/i03/
http://people.orie.cornell.edu/davidr/or678/r2winbugs/index.html

使用道具

soccy 发表于 2014-12-31 00:18:14 |显示全部楼层 |坛友微信交流群
https://sites.google.com/site/doingbayesiandataanalysis/software-installation

使用道具

soccy 发表于 2014-12-31 00:35:19 |显示全部楼层 |坛友微信交流群
WinBUGS局限性很明显,如果刚开始学习bayesian分析,不如直接从Stan入手。

使用道具

xingzhaoh 发表于 2014-12-31 10:12:35 |显示全部楼层 |坛友微信交流群
soccy 发表于 2014-12-31 00:35
WinBUGS局限性很明显,如果刚开始学习bayesian分析,不如直接从Stan入手。
大侠,我这个有点着急用,你看看这些代码之后怎么样才能绘出后验概率图?
请求您的帮忙,代码如下:
  1. library(R2WinBUGS)
  2. library(lattice)
  3. library(coda)
  4. dat<-read.csv("c:/data.csv")
  5. attach(dat)
  6. setwd("c:/")
  7. sink("lme.model2.txt")
  8. cat("
  9. model {

  10. # Priors
  11. for (i in 1:6){               
  12.     alpha[i] ~ dnorm(mu.int, tau.int)        # Random intercepts
  13.     beta[i] ~ dnorm(mu.slope, tau.slope)# Random slopes
  14. }

  15. mu.int ~ dnorm(0, 0.001)                # Mean hyperparameter for random intercepts
  16. tau.int <- 1 / (sigma.int * sigma.int)
  17. sigma.int ~ dunif(0, 100)                # SD hyperparameter for random intercepts

  18. mu.slope ~ dnorm(0, 0.001)                # Mean hyperparameter for random slopes
  19. tau.slope <- 1 / (sigma.slope * sigma.slope)
  20. sigma.slope ~ dunif(0, 100)                # SD hyperparameter for slopes

  21. tau <- 1 / ( sigma * sigma)                # Residual precision
  22. sigma ~ dunif(0, 100)                        # Residual standard deviation

  23. # Likelihood
  24. for (i in 1:n) {
  25.     mass[i] ~ dnorm(mu[i], tau)
  26.     mu[i] <- alpha[pop[i]] + beta[pop[i]]* length[i]
  27. }
  28. }
  29. ",fill=TRUE)
  30. sink()

  31. # Bundle data
  32. win.data <- list(mass = as.numeric(mass), pop = pop, length = length, n =length(mass))

  33. # Inits function
  34. inits <- function(){ list(alpha = rnorm(6, 0, 2), beta = rnorm(6, 10, 2),
  35. mu.int = rnorm(1, 0, 1), sigma.int = rlnorm(1), mu.slope = rnorm(1, 0, 1),
  36. sigma.slope = rlnorm(1), sigma = rlnorm(1))}

  37. # Parameters to estimate
  38. parameters <- c("alpha", "beta", "mu.int", "sigma.int", "mu.slope", "sigma.slope", "sigma")

  39. ni <-10000
  40. nb <- 1000
  41. nt <- 2
  42. nc <- 3

  43. # Start Gibbs sampling
  44. out1 <- bugs(win.data, inits, parameters, "lme.model2.txt", n.thin=nt,
  45. n.chains=nc, n.burnin=nb, n.iter=ni, debug = TRUE)
复制代码

使用道具

soccy 发表于 2014-12-31 19:17:33 |显示全部楼层 |坛友微信交流群
plot(out1)如何?

使用道具

xingzhaoh 发表于 2015-1-2 09:20:40 |显示全部楼层 |坛友微信交流群
soccy 发表于 2014-12-31 19:17
plot(out1)如何?
不对的,我试过的,不知还有其他方法吗?数据也上传了,代码在上面,麻烦您试试怎么绘出?谢谢您了?

data.rar

1.34 KB

本附件包括:

  • data.csv

使用道具

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群

京ICP备16021002-2号 京B2-20170662号 京公网安备 11010802022788号 论坛法律顾问:王进律师 知识产权保护声明   免责及隐私声明

GMT+8, 2024-4-18 19:57