我可以使用texreg获得用于knitr的glm的漂亮输出。有时我们需要用反向链接将glm的输出转换回响应。我想知道如何使用texreg获得反向链接输出。有点像texreg(exp(glm.D93))。
counts <- c(18,17,15,20,10,20,25,13,12)
outcome <- gl(3,1,9)
treatment <- gl(3,3)
d.AD <- data.frame(treatment, outcome, counts)
glm.D93 <- glm(counts ~ outcome + treatment, family = poisson())
library(texreg)
texreg(glm.D93)产
\begin{table}
\begin{center}
\begin{tabular}{l c }
\hline
& Model 1 \\
\hline
(Intercept) & $3.04^{***}$ \\
& $(0.17)$ \\
outcome2 & $-0.45^{*}$ \\
& $(0.20)$ \\
outcome3 & $-0.29$ \\
& $(0.19)$ \\
treatment2 & $0.00$ \\
& $(0.20)$ \\
treatment3 & $0.00$ \\
& $(0.20)$ \\
\hline
AIC & 56.76 \\
BIC & 57.75 \\
Log Likelihood & -23.38 \\
Deviance & 5.13 \\
Num. obs. & 9 \\
\hline
\multicolumn{2}{l}{\scriptsize{$^{***}p<0.001$, $^{**}p<0.01$, $^*p<0.05$}}
\end{tabular}
\caption{Statistical models}
\label{table:coefficients}
\end{center}
\end{table}但texreg(exp(glm.D93))说
Error in exp(glm.D93) : non-numeric argument to mathematical function编辑的
glm使用了一些link函数,并提供了标准错误、和置信区间 on 链接标度。但有时我们也需要coefficients,,,标准错误,和置信区间的响应等级。coefficients,直接提供coefficients,标准错误和置信区间在链路标度上,不知道是否有可能直接得到标准错误和E 141置信区间E 242对E 143响应标度E 244。
我找到了一种在stargazer中实现这一目标的方法,但是标准错误和置信区间仍然不是正确的。寻找解决这个问题的方法。
library(stargazer)
stargazer(glm.D93, coef=list(exp(glm.D93$coefficients)), type="text")
=============================================
Dependent variable:
---------------------------
counts
---------------------------------------------
outcome2 0.635***
(0.202)
outcome3 0.746***
(0.193)
treatment2 1.000***
(0.200)
treatment3 1.000***
(0.200)
Constant 21.000***
(0.171)
---------------------------------------------
Observations 9
Log Likelihood -23.381
Akaike Inf. Crit. 56.761
=============================================
Note: *p<0.1; **p<0.05; ***p<0.01发布于 2015-08-02 22:43:52
要么使用覆盖参数来完成这一任务,要么操作中间的texreg对象:
# solution 1
tr <- extract(glm.D93)
texreg(glm.D93, override.coef = exp(tr@coef), override.se = exp(tr@se))
# solution 2
tr <- extract(glm.D93)
tr@coef <- exp(tr@coef)
tr@se <- exp(tr@se)
texreg(tr)或者直接从模型对象或其摘要中提取值(如果您不想使用texreg的提取函数),并将指数化的值交给重写参数。
这些解决方案中的任何一个都会产生以下输出(与屏幕显示一起):
==========================
Model 1
--------------------------
(Intercept) 21.00 ***
(1.19)
outcome2 0.63 *
(1.22)
outcome3 0.75
(1.21)
treatment2 1.00
(1.22)
treatment3 1.00
(1.22)
--------------------------
AIC 56.76
BIC 57.75
Log Likelihood -23.38
Deviance 5.13
Num. obs. 9
==========================
*** p < 0.001, ** p < 0.01, * p < 0.05https://stackoverflow.com/questions/31459714
复制相似问题