任何人都可以向我解释为什么
simulatedCase <- rbinom(100,1,0.5)
simDf <- data.frame(CASE = simulatedCase)
posterior_m0 <<- MCMClogit(CASE ~ 1, data = simDf, b0 = 0, B0 = 1)
总是导致 MCMC 接受率为 0?任何解释将不胜感激!
任何人都可以向我解释为什么
simulatedCase <- rbinom(100,1,0.5)
simDf <- data.frame(CASE = simulatedCase)
posterior_m0 <<- MCMClogit(CASE ~ 1, data = simDf, b0 = 0, B0 = 1)
总是导致 MCMC 接受率为 0?任何解释将不胜感激!
我认为您的问题是模型公式,因为逻辑回归模型没有错误项。因此,您的模型CASE ~ 1
应该被替换为CASE ~ x
(预测变量x
是强制性的)。这是您的示例,已修改:
CASE <- rbinom(100,1,0.5)
x <- 1:100
posterior_m0 <- MCMClogit (CASE ~ x, b0 = 0, B0 = 1)
classic_m0 <- glm (CASE ~ x, family=binomial(link="logit"), na.action=na.pass)
所以我认为你的问题与 MCMCpack 库无关(免责声明:我从未使用过这个包)。
对于遇到同样问题的任何人:
如果您的模型只有截距,则 MCMClogit 函数似乎无法处理 B0=0 以外的任何内容。
如果添加协变量,则可以指定精度。
如果您真的想从此模型中取样,我会考虑其他软件包(例如 arm 或 rjags)。有关可用于贝叶斯回归的选项列表,请参阅http://cran.r-project.org/web/views/Bayesian.html