Runjags 분명히 컨버전스 문제가 체인에 대한 psrf = 1.0047
매우 낮은보고 :runjags 요약에서 psrf 값이 너무 낮습니까?
> print(o, vars = "q_date2")
JAGS model summary statistics from 3000 samples (chains = 3; adapt+burnin = 1000):
Lower95 Median Upper95 Mean SD MCerr MC%ofSD SSeff AC.10 psrf
q_date2 -0.17611 -0.10467 0.0053844 -0.087376 0.063296 0.023726 37.5 7 0.022495 1.0047
나는 psrf
사용 코다을 계산하려고 할 때, 나는 훨씬 더 합리적으로 보이는 결과를 얻을 :
> gelman.diag(as.mcmc.list(o)[,'q_date2'], transform=FALSE, autoburnin=FALSE)
Potential scale reduction factors:
Point est. Upper C.I.
[1,] 3.54 7.94
그렇다면 runjags에서보고 한 psrf
은 왜 그렇게 낮습니까? runjags의 문제입니까, 아니면 제가 잘못하고 있습니까?
저는 R 3.1.0에서 현재 버전의 runjags (1.2.1-0)를 사용합니다.
편집 : 요약을 생성하는 동안 내가 경고 있어요 - 전에 언급하지 않는 미안 :
Warning messages:
1: In autocorrs[x$stochastic] <- x$autocorr[4, ] :
number of items to replace is not a multiple of replacement length
2: In psrfs[x$stochastic] <- x$psrf$psrf[, 1] :
number of items to replace is not a multiple of replacement length
감사합니다! MCMC에서'M' 변수, 즉'gelman.diag (as.mcmc.list (outRJ))'를 사용하여'gelman.diag'를 실행하면 실제로 "chol.default (W) : 순서 1의 선행 미성년자는 긍정적 인 명확한 "*가 아니다. 이것이 아마도이 문제가 발생한 이유 일 것입니다! – TMS