使用 rstanarm 的多项式 logit

Multinomial logit using rstanarm

我知道您可以通过使用 stan_glm 和设置 family = binomial(link="logit") 将二项式 Logit 模型与 rstanarm 包拟合,但是 rstanarm 是否为您提供了选项拟合多项式 Logit 模型 ?

我找到了这个https://stats.stackexchange.com/questions/24705/can-i-use-glm-algorithms-to-do-a-multinomial-logistic-regression

但我对如何将模型 Y=A+BX 转换为那里提到的形式感到困惑。

目前无法使用 rstanarm R 包估计多项式 Logit 模型。有一个长期存在的 issue 来实现它,这不会太困难,但我们更专注于实现多项概率模型的更困难的问题。我相信你可以用brms R包中的brm函数做一个多项式logit模型,它也使用Stan从后验分布中得出。

brms 支持多项式模型。这里有两种方法:

library(foreign) 
library(brms)

#data source: https://stats.idre.ucla.edu/r/dae/multinomial-logistic-regression/
ml <- read.dta("https://stats.idre.ucla.edu/stat/data/hsbdemo.dta")
ml$prog2 <- relevel(ml$prog, ref = "academic")

#Method 1:
m1 <- brm(prog2 ~ ses + write, data = ml, family = multinomial(link = "logit"))
summary(m1)

#Method 2:
m2 <- brm(prog ~ ses + write, data = ml, family = categorical(link = "logit"))
summary(m2)

您可以使用 stan_polr,示例请参见“Regression and Other Stories”(第 15.5 节)。例如

library(rstanarm)
fit <- stan_polr(factor(vote) ~ value, data = data_401, prior = R2(0.3, "mean))

取自https://avehtari.github.io/ROS-Examples/Storable/storable.html