【发布时间】:2020-01-12 06:01:28
【问题描述】:
我想用不同的种子运行以下模型 3 次。例如,下面的模型使用种子314159运行
set.seed(314159)
x <- c(11, 5, 2, -5, 7, 2, -11, 9, -5, -5, -4, 17, 2, -10, -11, -10,
-4, 2, 1, 13)
a <- 0.1
b <- 0.1
c <- 0
d <- 100^2
M <- 1e3
sample <- array(NA, dim=c(M,2))
mu <- mean(x)
sig2 <- var(x)
for( m in 1:M ){
mu <- rnorm(1, (length(x) + 1/d)^(-1) * (sum(x) + c/d),
sqrt( sig2/(length(x) + 1/d) ))
sig2 <- rigamma(1, .5*length(x)+a+.5,
.5*sum( (x-mu)^2 ) + 1/(2*d)*(mu-c)^2 + b )
sample[m,] <- c(mu,sig2)
}
plot( density( sample[,1] ))
plot( density( sample[,2] ))
如果我想为种子 523626 和 626789 运行相同的模型,我可以使用任何 for 循环吗?
任何帮助表示赞赏?
【问题讨论】: