2016-03-26 1 views
0

に及ぼす影響を分析する「データを分析するために、次の階層モデルを適用するために、保険の三つのグループ 保険契約者のための数理計算上の請求データ、ベイズモデル(Rjags)

year: 1 2 3 4 5 
Grp1: 9 7 6 13 12 
Grp2: 6 4 2 8 10 
Grp3: 8 8 3 4 9 

ランRとぎざぎざの数の下に考えてみましょう:

Yij ∼ Poisson(λij) 
λij = Pijθj 
θij ∼ Ga(α, β) Pij ∼ Ga(γ, δ) 
α ∼ Ga(5, 5) γ ∼ U(0, 100) 
β ∼ Ga(25, 1) δ ∼ U(0, 100), 
where i = 1, 2, 3 and j = 1, . . . , 5. 

グループ効果と年度効果については、どのような結論ですか?

JAGSを使用してRにプルされるようにドラフトされたモデル仕様があります。私の質問は、Groupの効果とYearの効果を別々にテストするためにRでどのようにコード化するのですか?私は1つの変数に対してジャグを使用したことがあります。ここで

は私のクッキーカッターぎざぎざコードです:ここで

library(rjags) 



forJags<-list(    ) 

inits<-list(     ) 

foo<jags.model(file="m2n4.bug",data = forJags,inits=inits) 

out<-coda.samples(model=foo, variable.names = c(    ),  n.iter=50000,thin=5) 

summary(out) 

は私のモデルである:

model 
{ 
for (i in 1:3,j in 1:5){ 
Y[i,j] ~ dpois(lambda[i,j]) 
lambda[i,j] = P[i,j]*theta[i,j] 
theta[i,j] ~dgamma(alpha,beta) 
P[i,j] ~ dgamma(gamma,delta) 
} 
alpha ~ dgamma(5,5) 
beta ~ dgamma(25,1) 
gamma ~ dunif(0,100) 
delta ~ dunif(0,100) 
} 

私は別に効果をテストするようにコーディングする方法を私に知らせる任意の入力は次のようになり巨大。

答えて

0

として、あなたのモデルを定義します。

model 
{ 
for (j in 1:5){P[j] ~ dgamma(gamma,delta)} 
for (i in 1:3){ 
for(j in 1:5){ 
Y[i,j] ~ dpois(lambda[i,j]) 
lambda[i,j] = P[j]*theta[i,j] 
theta[i,j] ~ dgamma(alpha,beta) 
} 
} 
alpha ~ dgamma(5,5) 
beta ~ dgamma(25,1) 
gamma ~ dunif(0,100) 
delta ~ dunif(0,100) 
} 

してから実行します。

library(rjags) 

Y<-rbind(c(9, 7, 6, 13, 12),c(6 ,4 ,2 ,8 ,10),c(8 ,8, 3, 4, 9)) 

forJags<-list('Y' = Y) 

foo<-jags.model(file="m2n4.bug",data = forJags) 

out<-coda.samples(model=foo, variable.names = c("theta","P"),n.iter=50000,thin=5) 

summary(out) 

あなたはその後、P用に別の効果(年間)と、単一の効果(theta)を見ることができます