包括关于观星者的注释 table 会扭曲列之间的距离

Including notes on stargazer table distorts distance between columns

我正在尝试使用 stargazer 包打印一些 table 的 plm 模型。一切正常,直到我尝试向我的 table 添加注释。不幸的是,当我添加注释时,输出 table 失真,每列之间有很大的空格。谁能帮我修一下?提前致谢!

注意:我仍在学习 Latex,因此欢迎提供也适用于 html 的解决方案

#Here I create a simple data.frame just to replicate my data
vector <- rep(0,72)

for (i in 1:72) {
  vector[i] <- rnorm(1)
}

data <- as.data.frame(matrix (vector, nrow = 7))

#This outputs a normal table, with normal space width between columns
stargazer(data,
          type = "text",
          style = "AER")

#This is the note I want to print. However, it returns an error if I space it out like that.
stargazer(data,
          type = "text",
          notes = c("All models were estimated by fixed effects estimator. Errors are robust to heteroscedasticity and 
                    autocovariance. Numbers between parenthesis are the coefficient standard deviations. * represents 
                    significance at the 10 % level, ** represents significance at the 5% level, and *** represents significance 
                    at the 1% level. Models (1), (2) and (3) refer, respectively, to equations (7), (8) and (9)"),
          style = "AER")


#This outputs the table. However, there are big blank spaces between columns. How do I fix this?
stargazer(data,
          type = "text",
          notes = c("All models were estimated by fixed effects estimator. Errors are robust to heteroscedasticity and autocovariance. Numbers between parenthesis are the coefficient standard deviations. * represents significance at the 10 % level, ** represents significance at the 5% level, and *** represents significance at the 1% level. Models (1), (2) and (3) refer, respectively, to equations (7), (8) and (9)"),
          style = "AER")

LaTeX 解决方案

我遇到了类似的问题,这是我针对 LaTeX 的解决方案。

首先,您需要一个单独的函数来创建自己的包含注释的小页面。

library(stargazer)

stargazernote <- function(starGazerCmd, outputfile, note){
  # inserts 'note' to the end of stargazer generated latex table
  ssn <- gsub(x=starGazerCmd, pattern='\end{tabular}',
              replacement=paste('\end{tabular}', '\n',
                                '\centerline{\begin{minipage}{0.95\textwidth}~\', '\n',
                                '\footnotesize{' , note, 
                                '} \end{minipage}}',  sep=''), fixed=T)

  cat(ssn,sep='\n',file=outputfile)
}

(您可能想尝试使用参数 {0.95\textwidth}。有些人喜欢音符的宽度稍宽或稍窄。)

创建你的 stargazer 乳胶 table 不带注释如下:

s <- stargazer(data,
          type = "latex",
          style = "AER",
          notes.append=FALSE,
          )

然后单独创建笔记:

note <- "All models were estimated by fixed effects estimator. Errors are robust to heteroscedasticity and autocovariance. Numbers between parenthesis are the coefficient standard deviations. * represents significance at the 10 \% level, ** represents significance at the 5\% level, and *** represents significance at the 1\% level. Models (1), (2) and (3) refer, respectively, to equations (7), (8) and (9)"

这是第一个陷阱:% 符号被 LaTeX 解释为注释符号,因此您需要通过在 % 前面加上 \ 来转义它们。

现在你可以使用上面的函数来整理笔记和 LaTeX table:

stargazernote(s, note=note, outputfile='foo.tex')

输出如下所示:

第二个问题是您需要记住在 LaTeX 文件中包含 graphicx。 .tex 文件可能如下所示:

\documentclass[english]{article}
\usepackage[T1]{fontenc}
\usepackage[latin9]{inputenc}

\usepackage{graphicx} %% note: the table will not render without this package. 

\begin{document}
\include{foo.tex}
\end{document}

文字解

您可以像这样强制更改注释中的行(这是从 this SO question 复制的):

stargazer(data,
          type = "text",
          notes= c("All models were estimated by fixed effects estimator.", 
                    "Errors are robust to heteroscedasticity and autocovariance.", 
                    "Numbers between parenthesis are the coefficient standard deviations.", 
                    "* represents significance at the 10 % level", 
                    "** represents significance at the 5% level,", 
                    "and *** represents significance at the 1% level.", 
                     "Models (1), (2) and (3) refer, respectively, to equations (7), (8) and (9)"),
          style = "AER")

输出:

=================================================================================
Statistic             N       Mean   St. Dev.   Min    Pctl(25) Pctl(75)   Max   
---------------------------------------------------------------------------------
V1                    7      0.184    0.380    -0.230   -0.004   0.231    0.957  
V2                    7      -0.083   1.018    -1.246   -0.827   0.631    1.322  
V3                    7      -0.058   0.752    -0.733   -0.610   0.495    1.025  
V4                    7      -0.316   1.106    -2.223   -0.725   0.412    1.120  
V5                    7      -0.242   0.927    -1.777   -0.809   0.397    0.743  
V6                    7      -0.020   1.403    -1.453   -1.202   0.756    2.348  
V7                    7      0.565    1.130    -1.459   0.156    1.224    2.023  
V8                    7      0.840    0.938    -0.493   0.334    1.302    2.256  
V9                    7      -0.191   0.761    -1.012   -0.766   0.236    1.107  
V10                   7      0.530    0.643    -0.222   0.144    0.680    1.768  
V11                   7      0.263    0.396    -0.230   -0.004   0.432    0.957  
---------------------------------------------------------------------------------
All models were estimated by fixed effects estimator.                            
Errors are robust to heteroscedasticity and autocovariance.                      
Numbers between parenthesis are the coefficient standard deviations.             
* represents significance at the 10 % level                                      
** represents significance at the 5% level,                                      
and *** represents significance at the 1% level.                                 
Models (1), (2) and (3) refer, respectively, to equations (7), (8) and (9)