Rmarkdown / knitr中的texreg

时间:2017-02-12 17:15:40

标签: r knitr r-markdown texreg

简单问题:我可以使用texreg在Rmarkdown中的降价(非LaTex)文档中使用knitr吗?

我以为我可以,但似乎我错了?我可以在Rmarkdown中包含LaTex代码用于方程式,但对于texreg的表没有成功(至少当剩下的文档用markdown编写时。

我收到此错误:

pandoc document conversion failed with error 43

无论我使用texreg()(对于LatTex),htmlreg()还是screenreg(),我都没有在针织PDF文档中获得一个像样的表格。

---
title: "Title"
fontsize: 12pt
output:
   pdf_document:
   latex_engine: xelatex
---

然后尝试开发表格:

```{r Table_with_texreg, results="asis"}
library(texreg)
modellist = list(model1, model2, model3, model4, model5)

texreg(modellist, type = 'un', 
summaries = c('ChiSqM_Value', 'ChiSqM_DF', 'ChiSqM_DF', 'ChiSqM_PValue', 'CFI',
'RMSEA_Estimate'), single.row=TRUE)

texreg()之后的一些参数是MplusAutomation包的命令,指定了哪些参数(未标准化)以及哪些模型适合使用的索引。对于问题不应该有任何意义/发布。)

这是编织时生成的LaTex代码,导致转换错误43:

\begin{tabular}{l c c c c c }
\hline
 & Model 1 & Model 2 & Model 3 & Model 4 & Model 5 \\
\hline
 DISCRIM$<$-AGEA           & $-0.00 \; (0.00)^{***}$ & $-0.01 \; (0.00)^{***}$ & $-0.01 \; (0.00)^{***}$ & $-0.00 \; (0.00)^{***}$ & $-0.01 \; (0.00)^{***}$ \\
 DISCRIM$<$-GNDR           & $0.05 \; (0.02)^{**}$   & $0.07 \; (0.02)^{***}$  & $0.09 \; (0.02)^{***}$  & $0.03 \; (0.02)^{*}$    & $0.07 \; (0.02)^{***}$  \\
 DISCRIM$<$-MINORITY       & $0.14 \; (0.04)^{***}$  & $0.17 \; (0.04)^{***}$  & $0.13 \; (0.04)^{***}$  & $0.19 \; (0.04)^{***}$  & $0.19 \; (0.04)^{***}$  \\
 PDJSEX\_R$<$-AGEA         & $-0.01 \; (0.00)^{***}$ &                         &                         & $-0.01 \; (0.00)^{***}$ &                         \\
 PDJSEX\_R$<$-GNDR         & $0.38 \; (0.03)^{***}$  &                         &                         & $0.38 \; (0.03)^{***}$  &                         \\
 PDJSEX\_R$<$-MINORITY     & $0.11 \; (0.04)^{**}$   &                         &                         & $0.11 \; (0.04)^{**}$   &                         \\
 PDJETN\_R$<$-AGEA         & $-0.00 \; (0.00)^{***}$ &                         & $-0.00 \; (0.00)^{***}$ &                         &                         \\
 PDJETN\_R$<$-GNDR         & $-0.02 \; (0.02)$       &                         & $-0.02 \; (0.02)$       &                         &                         \\
 PDJETN\_R$<$-MINORITY     & $0.94 \; (0.08)^{***}$  &                         & $0.93 \; (0.08)^{***}$  &                         &                         \\
 PREDJ\_R$<$-DISCRIM       & $1.00 \; (0.00)$        & $1.00 \; (0.00)$        & $1.00 \; (0.00)$        & $1.00 \; (0.00)$        & $1.00 \; (0.00)$        \\
 LKRSP\_R$<$-DISCRIM       & $1.05 \; (0.01)^{***}$  & $1.08 \; (0.01)^{***}$  & $1.08 \; (0.01)^{***}$  & $1.08 \; (0.01)^{***}$  &                         \\
 TRTBD\_R$<$-DISCRIM       & $1.02 \; (0.01)^{***}$  & $1.05 \; (0.01)^{***}$  & $1.05 \; (0.01)^{***}$  & $1.05 \; (0.01)^{***}$  &                         \\
 PDJSEX\_R$<$-$>$DISCRIM   & $0.74 \; (0.02)^{***}$  &                         &                         & $0.76 \; (0.02)^{***}$  &                         \\
 PDJETN\_R$<$-$>$DISCRIM   & $0.62 \; (0.02)^{***}$  &                         & $0.66 \; (0.02)^{***}$  &                         &                         \\
 PDJETN\_R$<$-$>$PDJSEX\_R & $0.78 \; (0.02)^{***}$  &                         &                         &                         &                         \\
 PREDJ_R$1<-Thresholds     & $0.19 \; (0.10)^{*}$    & $0.19 \; (0.10)^{*}$    & $0.18 \; (0.10)$        & $0.18 \; (0.10)$        & $0.18 \; (0.10)$        \\
 PREDJ_R$2<-Thresholds     & $0.71 \; (0.09)^{***}$  & $0.71 \; (0.09)^{***}$  & $0.70 \; (0.09)^{***}$  & $0.70 \; (0.09)^{***}$  & $0.70 \; (0.09)^{***}$  \\
 LKRSP_R$1<-Thresholds     & $0.14 \; (0.07)$        & $0.13 \; (0.07)$        & $0.15 \; (0.07)^{*}$    & $0.14 \; (0.07)$        & $0.14 \; (0.07)$        \\
 LKRSP_R$2<-Thresholds     & $0.72 \; (0.07)^{***}$  & $0.72 \; (0.07)^{***}$  & $0.73 \; (0.07)^{***}$  & $0.72 \; (0.07)^{***}$  & $0.72 \; (0.07)^{***}$  \\
 TRTBD_R$1<-Thresholds     & $0.51 \; (0.06)^{***}$  & $0.51 \; (0.06)^{***}$  & $0.50 \; (0.06)^{***}$  & $0.51 \; (0.06)^{***}$  & $0.50 \; (0.06)^{***}$  \\
 TRTBD_R$2<-Thresholds     & $1.11 \; (0.07)^{***}$  & $1.11 \; (0.07)^{***}$  & $1.12 \; (0.07)^{***}$  & $1.11 \; (0.07)^{***}$  & $1.11 \; (0.07)^{***}$  \\
 PDJSEX_R$1<-Thresholds    & $0.86 \; (0.06)^{***}$  & $0.86 \; (0.06)^{***}$  & $0.87 \; (0.06)^{***}$  & $0.86 \; (0.06)^{***}$  & $0.86 \; (0.06)^{***}$  \\
 PDJSEX_R$2<-Thresholds    & $1.44 \; (0.06)^{***}$  & $1.44 \; (0.06)^{***}$  & $1.44 \; (0.06)^{***}$  & $1.44 \; (0.06)^{***}$  & $1.44 \; (0.06)^{***}$  \\
 PDJETN_R$1<-Thresholds    & $0.80 \; (0.07)^{***}$  & $0.79 \; (0.07)^{***}$  & $0.80 \; (0.07)^{***}$  & $0.79 \; (0.07)^{***}$  & $0.80 \; (0.07)^{***}$  \\
 PDJETN_R$2<-Thresholds    & $1.29 \; (0.09)^{***}$  & $1.29 \; (0.09)^{***}$  & $1.29 \; (0.09)^{***}$  & $1.29 \; (0.09)^{***}$  & $1.29 \; (0.09)^{***}$  \\
 DISCRIM$<$-$>$DISCRIM     & $0.79 \; (0.02)^{***}$  & $0.74 \; (0.02)^{***}$  & $0.74 \; (0.02)^{***}$  & $0.75 \; (0.02)^{***}$  & $0.84 \; (0.01)^{***}$  \\
 PDJSEX\_R$<$-DISCRIM      &                         & $1.03 \; (0.01)^{***}$  & $1.03 \; (0.01)^{***}$  &                         & $0.98 \; (0.01)^{***}$  \\
 PDJETN\_R$<$-DISCRIM      &                         & $0.90 \; (0.01)^{***}$  &                         & $0.90 \; (0.01)^{***}$  & $0.87 \; (0.01)^{***}$  \\
 LKRSP\_R$<$-AGEA          &                         &                         &                         &                         & $-0.01 \; (0.00)^{***}$ \\
 LKRSP\_R$<$-GNDR          &                         &                         &                         &                         & $0.06 \; (0.02)^{***}$  \\
 LKRSP\_R$<$-MINORITY      &                         &                         &                         &                         & $0.14 \; (0.04)^{***}$  \\
 TRTBD\_R$<$-AGEA          &                         &                         &                         &                         & $-0.00 \; (0.00)^{**}$  \\
 TRTBD\_R$<$-GNDR          &                         &                         &                         &                         & $0.06 \; (0.02)^{**}$   \\
 TRTBD\_R$<$-MINORITY      &                         &                         &                         &                         & $0.20 \; (0.05)^{***}$  \\
 LKRSP\_R$<$-$>$DISCRIM    &                         &                         &                         &                         & $0.74 \; (0.02)^{***}$  \\
 TRTBD\_R$<$-$>$DISCRIM    &                         &                         &                         &                         & $0.72 \; (0.02)^{***}$  \\
 TRTBD\_R$<$-$>$LKRSP\_R   &                         &                         &                         &                         & $0.88 \; (0.01)^{***}$  \\
\hline
ChiSqM_Value               & 331.41                  & 808.73                  & 776.77                  & 568.88                  & 648.83                  \\
ChiSqM_DF                  & 10                      & 17                      & 14                      & 14                      & 10                      \\
ChiSqM_PValue              & 0.00                    & 0.00                    & 0.00                    & 0.00                    & 0.00                    \\
CFI                        & 0.97                    & 0.93                    & 0.94                    & 0.95                    & 0.95                    \\
RMSEA_Estimate             & 0.02                    & 0.03                    & 0.03                    & 0.03                    & 0.03                    \\
\hline
\multicolumn{6}{l}{\scriptsize{$^{***}p<0.001$, $^{**}p<0.01$, $^*p<0.05$}}
\end{tabular}

P.S。编织HTML(不是PDF)和使用htmlreg(不是texreg)似乎工作正常。不过,我宁愿使用PDF。

1 个答案:

答案 0 :(得分:1)

您写的是要生成PDF,但不能使用LaTeX。你确定吗?我不知道该怎么做,但这里有两个解决方案,用于生成a)HTML输出和b)使用LaTeX的PDF,都使用texreg

解决方案1(用于HTML输出):

---
output: html_document
---

```{r setup, include=FALSE}
knitr::opts_chunk$set(echo = TRUE)
```

```{r, echo = FALSE, message = FALSE}
ctl <- c(4.17,5.58,5.18,6.11,4.50,4.61,5.17,4.53,5.33,5.14)
trt <- c(4.81,4.17,4.41,3.59,5.87,3.83,6.03,4.89,4.32,4.69)
group <- gl(2, 10, 20, labels = c("Ctl","Trt"))
weight <- c(ctl, trt)
lm.D9 <- lm(weight ~ group)

library("texreg")
```

Some equation:
$$a + b = 2$$

Table follows:
```{r, results = 'asis', echo = FALSE}
htmlreg(lm.D9, star.symbol = "\\*", doctype = FALSE, center = FALSE, caption = "")
```

这是输出:

HTML output

解决方案2(用于PDF输出):

---
output: pdf_document
---

```{r setup, include=FALSE}
knitr::opts_chunk$set(echo = TRUE)
```

```{r, echo = FALSE, message = FALSE}
ctl <- c(4.17,5.58,5.18,6.11,4.50,4.61,5.17,4.53,5.33,5.14)
trt <- c(4.81,4.17,4.41,3.59,5.87,3.83,6.03,4.89,4.32,4.69)
group <- gl(2, 10, 20, labels = c("Ctl","Trt"))
weight <- c(ctl, trt)
lm.D9 <- lm(weight ~ group)

library("texreg")
```

Some equation:
$$a + b = 2$$

Table follows:
```{r, results = 'asis', echo = FALSE}
texreg(lm.D9, table = FALSE, use.packages = FALSE)
```

这是输出:

PDF output