我正在尝试使用stargazer
创建一个多变量logistic回归模型的表。我想包括比值比及其置信区间而不是模型系数。
由于有了link,我想出了用比值比替换系数的方法,但对CI进行相同操作会产生问题。如果我给stargazer
一个像se = *a list of the standard errors or exp(standard errors)*
这样的参数,它将使用该列表的OR +/- 1.96倍来计算CI,这是不正确的。
这是一些示例代码,来自UCLA DAE的第一部分:
library(stargazer)
mydata <- read.csv("http://www.ats.ucla.edu/stat/data/binary.csv")
mydata$rank <- factor(mydata$rank)
mylogit <- glm(admit ~ gre + gpa + rank, data = mydata, family = "binomial")
summary(mylogit)
# Table with coefficients
stargazer(mylogit, ci = T, single.row = T, type = "text")
# Table with Odds Ratios, but the CI is not right
OR.vector <- exp(mylogit$coef)
stargazer(mylogit, coef = list(OR.vector), ci = T, single.row = T, type = "text")
# Correct CIs
CI.vector <- exp(confint(mylogit))
cbind(OR = OR.vector, CI.vector)
最佳答案
您可以使用ci.custom
参数为stargazer
提供具有自定义置信区间的列表(第一列是下限,第二列是上限)。在您的示例中,您要做的就是调用:
stargazer(mylogit, coef = list(OR.vector), ci = T,
ci.custom = list(CI.vector), single.row = T, type = "text")
另外,您可以定义自己的函数以对值取幂,然后将此函数简单地应用于系数和/或置信区间(使用
apply.coef
和apply.ci
参数):exponentiate <- function(x) exp(x)
stargazer(mylogit, ci=T, apply.coef=exponentiate, apply.ci=exponentiate,
single.row = T, type="text")
关于r - 如何将置信区间添加到占星表中的优势比?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19576356/