可能有人向我解釋爲什麼MCMClogit混亂
simulatedCase <- rbinom(100,1,0.5)
simDf <- data.frame(CASE = simulatedCase)
posterior_m0 <<- MCMClogit(CASE ~ 1, data = simDf, b0 = 0, B0 = 1)
結果總是在0 MCMC接受比例是多少?任何解釋將不勝感激!
可能有人向我解釋爲什麼MCMClogit混亂
simulatedCase <- rbinom(100,1,0.5)
simDf <- data.frame(CASE = simulatedCase)
posterior_m0 <<- MCMClogit(CASE ~ 1, data = simDf, b0 = 0, B0 = 1)
結果總是在0 MCMC接受比例是多少?任何解釋將不勝感激!
我認爲你的問題是模型公式,因爲logistic regression models have no error term。因此,您的型號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
此代碼可行,但它適合兩個變量,即對x的依賴性的截距和線性項。我原本打算使用MCMClogit來適應攔截,而不依賴於x(一個奇怪的場景,我知道......)。 – Alexander