0

问题

有什么方法可以交叉引用fixest::etable()吗?我知道这etable是一个简单的方法,但它实际上非常有用。如果有办法做到这一点,那将非常有帮助。

环境是 Windows 10,使用 R 4.1.2 并bookdown::render_book()在 RStudio 中运行。以下是文件结构和每个文件的内容。

  • 索引.Rmd
  • _bookdown.yml
  • _output.yml

源代码

索引.Rmd

---
title: "test"
author: "null"
output: pdf_document
fontfamily: lmodern
documentclass: bxjsarticle
classoption: |
  xelatex,
  ja=standard,
  a4
link-citations: yes
---

```{r setup, include=FALSE}
knitr::opts_chunk$set(
    echo = FALSE,
    warning = FALSE,
    message = FALSE,
    dev = "cairo_pdf",
    results = "asis"
)
```

```{r model}
library(fixest)
model <- feols(dist ~ speed, cars)
```

```{r etable}
etable(model, title = "etable", tex = TRUE)
```

\@ref(tab:etable)

_bookdown.yml

delete_merged_file: true

_output.yml

bookdown::pdf_document2:
    latex_engine: xelatex
    dev: cairo_pdf
    fig_caption: yes
    number_sections: true

结果

如图所示,交叉引用将是“??”。现在,我必须在不使用交叉引用的情况下手动编号。

输出图像

4

2 回答 2

3

更新:我不知道为什么我错过了这个label论点。无论如何,@laurent-bergé 更正确。

注意:这个答案是从我的原始帖子(日文)翻译而来的。

我猜fixst包没有 Rmd 上的交叉引用选项。虽然它可能是一种杂物,但我发现您可以在title参数中插入 LaTeX 命令,如下所示。

```{r etable}
etable(model, title = "\\label{tab:etable}etable", tex = TRUE)
```

附录:一般而言,bookdown 不支持通过块标签引用表格,仅支持绘图。其他包(例如officedown)可以通过块标签引用表。

您也可以使用stargazer pacakge 轻松将回归分析的结果制成表格,但您可能也需要一些技巧(请参阅https://github.com/rstudio/bookdown/issues/175)。

于 2022-01-16T17:21:02.607 回答
2

etable有一个label论点:

library(fixest)
model = feols(dist ~ speed, cars)
etable(model, label = "tab:etable", tex = TRUE)

#> \begin{table}[htbp]
#>    \caption{\label{tab:etable} no title}
#>    \centering
#>    \begin{tabular}{lc}
#>       \tabularnewline \midrule \midrule
#>       Dependent Variable: & dist\\  
#>       Model:              & (1)\\  
#>       \midrule
#>       \emph{Variables}\\
#>       (Intercept)         & -17.58$^{**}$\\   
#>                           & (6.758)\\   
#>       speed               & 3.932$^{***}$\\   
#>                           & (0.4155)\\   
#>       \midrule
#>       \emph{Fit statistics}\\
#>       Observations        & 50\\  
#>       R$^2$               & 0.65108\\  
#>       Adjusted R$^2$      & 0.64381\\  
#>       \midrule \midrule
#>       \multicolumn{2}{l}{\emph{IID standard-errors in parentheses}}\\
#>       \multicolumn{2}{l}{\emph{Signif. Codes: ***: 0.01, **: 0.05, *: 0.1}}\\
#>    \end{tabular}
#> \end{table}
于 2022-01-18T10:23:39.573 回答