Advertisement
Guest User

Untitled

a guest
Feb 24th, 2017
68
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.30 KB | None | 0 0
  1. require(rjags)
  2. require(R2jags)
  3. require(devtools)
  4. require(jagstools)
  5.  
  6. N = 1000
  7. x = rnorm(N,5,1)
  8. mu = exp(1 + 0.5*x)
  9. y = rpois(N, mu)
  10.  
  11. model = function() {
  12. for(i in 1:N) {
  13. y[i] ~ dpois(mu[i])
  14. log(mu[i]) <- alpha + beta*x[i]
  15. }
  16. alpha ~ dnorm(0,0.001)
  17. beta ~ dnorm(0,0.001)
  18. }
  19.  
  20. ds = list(x=x, y=y, N=N)
  21. params = c('alpha','beta','mu')
  22. nchains = 2
  23. inits = list(data.frame(alpha=-2, beta=0.5), data.frame(alpha=-2, beta=0.5))
  24.  
  25. jags_model = jags(data=ds, param=params, n.chains=nchains, inits=inits,
  26. n.iter=2000, n.burnin=500, model.file=model)
  27. r1 = jagsresults(x=jags_model, params=c('alpha'))
  28. jags_model = jags(data=ds, param=params, n.chains=nchains, inits=inits,
  29. n.iter=2000, n.burnin=500, model.file=model)
  30. r2 = jagsresults(x=jags_model, params=c('alpha'))
  31.  
  32. r1 ; r2 # Small differences (mcmc sampling)
  33.  
  34.  
  35. # setting the mcmc seeds
  36. set.seed(100)
  37. jags_model = jags(data=ds, param=params, n.chains=nchains, inits=inits,
  38. n.iter=2000, n.burnin=500, model.file=model)
  39. r1 = jagsresults(x=jags_model, params=c('alpha'))
  40.  
  41. set.seed(100)
  42. jags_model = jags(data=ds, param=params, n.chains=nchains, inits=inits,
  43. n.iter=2000, n.burnin=500, model.file=model)
  44. r2 = jagsresults(x=jags_model, params=c('alpha'))
  45.  
  46. r1 ; r2 #results are now identical
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement