r语言 - 观星者中的指数CI



我正在尝试运行相当多的多项式回归模型。Stargazer似乎是一个很好的工具,可以在一个文档中报告所有结果,以便于访问。但是,我注意到我得到了一些负置信区间,这没有意义。

我尝试单独使用apply.coef=exp,在那里我得到了负置信区间 我还尝试使用置信区间没有意义的apply.coef=expapply.ci=exp

当我自己apply.ci=exp时,CI 是正确的,但它不会使系数成指数。

健康有3个等级(差、中、理想(,差是参考 ETI 是连续的。

test1 <- multinom(Health ~ ETI, data = X)
test2 <- multinom(Health ~ ETI + age + male, data = X)
test3 <- multinom(Health ~ ETI + age + male +educ +married+employed+income, data = X)
test4 <- multinom(Health ~ ETI + age + male +educ +married+depression+employed+income, data = X)

第一个代码(仅apply.coef(

stargazer(test1, test2, test3, test4, type="html", list(confint(test1, test2, test3, test4)),column.labels = c("Model1", "Model2", "Model3", "Model4"),column.separate = c(2,2,2,2), apply.coef=exp, out="X.htm")

我尝试的第二个代码(仅apply.ci(:

stargazer(test1, test2, test3, test4, type="html", apply.coef = exp  list(confint(test1, test2, test3, test4)),column.labels = c("Model1", "Model2", "Model3", "Model4"),column.separate = c(2,2,2,2), apply.ci=exp,apply.coef=exp, out="X.htm")

最后一个代码(apply.ciapply.coef(:

stargazer(test1, test2, test3, test4, type="html", apply.coef = exp  list(confint(test1, test2, test3, test4)),column.labels = c("Model1", "Model2", "Model3", "Model4"),column.separate = c(2,2,2,2), apply.ci=exp,apply.coef=exp, out="X.htm")

对于第一个代码:

#        Ideal  Int 
#Model1 
#          (1)  (2) 
#ETI    0.453*  0.761***    
#(-0.051, 0.956)    (0.413, 1.109)

指数系数正确,但置信区间错误

对于第二个代码:

#           Ideal   Int 
#Model1 
#            (1)            (2) 
#ETI    -0.793***   -0.273  
#(0.273, 0.749)       (0.538, 1.078)

CI 是正确的,并且与cofint匹配

对于第三个代码:

#       Ideal   Int 
#      Model1   
#       (1) (2) 
#ETI    0.453*  0.761***    
#(0.950, 2.602) (1.512, 3.033)

CI是错误的,我认为它是双重指数

如果texreg对您来说也没问题,下面是一个如何在 CI 上运行exp并将其用于回归表的示例。由于您没有包含数据,因此我使用了birthwt.

library(MASS)
library(nnet)
library(stargazer)
example(birthwt)
test1 <- multinom(race ~ age + lwt + bwt,
data = birthwt)
summary(test1)
summary(test1)["standard.errors"]
ci.low <- c(confint(test1)[1:4], confint(test1)[9:12])
ci.up <-  c(confint(test1)[5:8], confint(test1)[13:16])
texreg::screenreg(test1,
ci.force = T,
override.ci.low = exp(ci.low),
override.ci.up = exp(ci.up)
)

一种替代方法是使用gtsummary包,这将允许您在一行代码中轻松地对模型进行指数化。你必须考虑种族因素才能让它发挥作用。

library(nnet)
library(MASS)
library(gtsummary)
test1 <- multinom(factor(race) ~ age + lwt + bwt,
data = birthwt) %>% 
tbl_regression( exponentiate = TRUE)

test2 <- multinom(factor(race) ~ age + lwt + bwt,
data = birthwt)%>% 
tbl_regression( exponentiate = TRUE)

相关内容

  • 没有找到相关文章

最新更新