简体   繁体   English

从模型中提取指数系数 MuMIn::dredge

[英]extract exponential coefficients from models MuMIn::dredge

I'm trying to exponentiate coefficients and standard errors from multiple Poisson models from a MuMIn::dredge object to use with texreg::screenreg .我正在尝试对来自MuMIn::dredge dredge object 的多个泊松模型的系数和标准误差取幂,以与texreg::screenreg screenreg 一起使用。 In the case of one model we can do this :在一个 model 的情况下,我们可以这样

library(MuMIn)
library(texreg)
data(Cement)
m1 <- glm(X1 ~ y, data = Cement, na.action = "na.fail", family = poisson())
screenreg(m1)
# ==========================
#                 Model 1   
# --------------------------
# (Intercept)      -2.39 ** 
#                  (0.88)   
# y                 0.04 ***
#                  (0.01)   
# --------------------------
# AIC              76.03    
# BIC              77.16    
# Log Likelihood  -36.02    
# Deviance         26.76    
# Num. obs.        13       
# ==========================
# *** p < 0.001, ** p < 0.01, * p < 0.05



#EXP VERSION:
tr <- texreg::extract(m1)
screenreg(m1, override.coef = exp(tr@coef), override.se = exp(tr@se))
# ==========================
#                 Model 1   
# --------------------------
# (Intercept)       0.09 ** 
#                  (2.41)   
# y                 1.05 ***
#                  (1.01)   
# --------------------------
# AIC              76.03    
# BIC              77.16    
# Log Likelihood  -36.02    
# Deviance         26.76    
# Num. obs.        13       
# ==========================
# *** p < 0.001, ** p < 0.01, * p < 0.05
# Warning message:
# In override(models, override.coef, override.se, override.pvalues,  :
#   Standard errors were provided using 'override.se', but p-values were not replaced!

Now, if we use dredge to look at all combinations and get output without exponential values :现在,如果我们使用dredge查看所有组合并得到没有指数的 output:

  fm1 <- glm(X1 ~ ., data = Cement, na.action = "na.fail", family = poisson())
dd <- dredge(fm1)
#shorten output
dd <- dd[1:4, ]
screenreg(dd)
# =============================================================
#                 Model 1    Model 2     Model 3     Model 4   
# -------------------------------------------------------------
# (Intercept)       0.98       3.95 ***    7.74 **     3.45 ***
#                  (1.02)     (0.33)      (2.07)      (0.23)   
# X3               -0.12 **   -0.16 ***   -0.15 ***   -0.15 ***
#                  (0.03)     (0.03)      (0.03)      (0.03)   
# y                 0.02 *                                     
#                  (0.01)                                      
# X4                          -0.02       -0.06 *              
#                             (0.01)      (0.03)               
# X2                                      -0.05                
#                                         (0.03)               
# -------------------------------------------------------------
# Log Likelihood  -24.98     -25.95      -24.22      -28.48    
# AICc             58.62      60.56       61.44       62.16    
# Delta             0.00       1.94        2.82        3.55    
# Weight            0.56       0.21        0.14        0.09    
# Num. obs.        13         13          13          13       
# =============================================================
# *** p < 0.001, ** p < 0.01, * p < 0.05

Now I'm not sure how to get all exponential values of the dd object, something like this is what I was thinking:现在我不确定如何获得dd object 的所有指数值,我在想这样的事情:

tr <- texreg::extract(dd)
screenreg(dd, override.coef = exp(tr@coef), override.se = exp(tr@se))

this wont work and I'm guessing theres a quick work around?这行不通,我想有一个快速的解决方法吗?

thanks谢谢

texreg 's extract method for the "averaging" object returns a list of texreg objects, with one element for each model. You need to apply @coef and @se to each element. “平均” texreg的 texreg extract方法返回一个texreg对象列表,每个 model 有一个元素。您需要将@coef@se应用于每个元素。 For example:例如:

library(MuMIn)
library(texreg)

dd <- dredge(lm(y ~ X1 * X2, Cement, na.action = na.fail))
tr <- extract(dd)

screenreg(x, override.coef = lapply(lapply(tr, slot, 'coef'), exp))

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM