5

我想将glhtR 中对象的结果导出到 LaTeX 表中。

例如,使用“stargazer”库,可以生成一个格式精美的lme对象 LaTeX 表格。

我想从glht对象摘要的输出中自动创建一个 LaTeX 表,例如使用创建的摘要

>summary(glht(dataModel))
Linear Hypotheses:
                                                                        Estimate Std.     Error z value Pr(>|z|)    
Group1 - Group2 == 0   -0.14007    0.01589  -8.813   <0.001 "***"
Group1 - Group3 == 0    -0.09396    0.01575  -5.965   <0.001 ***
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1 
(Adjusted p values reported -- single-step method)

我知道像stargazer, xtable, texreg, reporttools, memiscand之类的库apsrtable,但是它们都没有为 glht 做这项工作:(

关于是否有图书馆的任何提示?

4

2 回答 2

7

You might find the answer right in the code example below:

multcomp:::print.summary.glht 

x<-glht(...)    
pq<-summary(x)$test

mtests <- cbind(pq$coefficients, pq$sigma, pq$tstat, pq$pvalues)
error <- attr(pq$pvalues, "error")
pname <- switch(x$alternativ, 
                 less = paste("Pr(<", ifelse(x$df ==0, "z", "t"), ")", sep = ""), 
                 greater = paste("Pr(>", ifelse(x$df == 0, "z", "t"), ")", sep = ""), 
                 two.sided = paste("Pr(>|", ifelse(x$df == 0, "z", "t"), "|)", sep = ""))                                                                   
colnames(mtests) <- c("Estimate", "Std. Error", ifelse(x$df ==0, "z value", "t value"), pname)

xtable(mtests)
于 2013-11-26T19:41:52.537 回答
2

来自 R-help 的 Rich 提供了帮助线索:

对 glht 对象进行胶乳处理的技巧是认识到它们非常复杂。有必要先隔离你想要的部分,然后Hmisc中的latex()函数就很好用了。

此示例基于 ?glht 中的示例之一

library(Hmisc)
library(multcomp)

### set up a one-way ANOVA
amod <- aov(breaks ~ tension, data = warpbreaks)

### set up all-pair comparisons for factor `tension'
### using a symbolic description (`type' argument
### to `contrMat()')
amod.glht <- glht(amod, linfct = mcp(tension = "Tukey"))

latex(confint(amod.glht)$confint, dec=3)

好吧,这并不能准确打印 summary(amod.glht) 将打印的内容,但是 latex() 是我正在寻找的缺失函数

于 2013-10-13T20:41:07.517 回答