Stargazer R 包:标题在 Latex 中的位置 Table
Stargazer R Package: Position of Title in Latex Table
我正在使用 r 中的 stargazer 包来生成乳胶文档的汇总统计信息。但是,该函数生成的乳胶代码的标题 (caption) 位于 table 之上。有没有一种简单的方法可以将标题放在 table 下方?
require(stargazer)
df <- data.frame(a=c(1,2,3),
b=c(2,3,5),
c=c(8,8,9))
stargazer(df,summary = TRUE, type = "latex",
title = "summary statistic")
函数的输出如下:
\begin{table}[!htbp] \centering
\caption{summary statistic}
\label{}
\begin{tabular}{@{\extracolsep{5pt}}lccccc}
\[-1.8ex]\hline
\hline \[-1.8ex]
Statistic & \multicolumn{1}{c}{N} & \multicolumn{1}{c}{Mean} & \multicolumn{1}{c}{St. Dev.} & \multicolumn{1}{c}{Min} & \multicolumn{1}{c}{Max} \
\hline \[-1.8ex]
a & 3 & 2.000 & 1.000 & 1 & 3 \
b & 3 & 3.333 & 1.528 & 2 & 5 \
c & 3 & 8.333 & 0.577 & 8 & 9 \
\hline \[-1.8ex]
\end{tabular}
\end{table}
请注意标题位于 table 之上。我想要的是以下内容:
\begin{table}[!htbp] \centering
\begin{tabular}{@{\extracolsep{5pt}}lccccc}
\[-1.8ex]\hline
\hline \[-1.8ex]
Statistic & \multicolumn{1}{c}{N} & \multicolumn{1}{c}{Mean} & \multicolumn{1}{c}{St. Dev.} & \multicolumn{1}{c}{Min} & \multicolumn{1}{c}{Max} \
\hline \[-1.8ex]
a & 3 & 2.000 & 1.000 & 1 & 3 \
b & 3 & 3.333 & 1.528 & 2 & 5 \
c & 3 & 8.333 & 0.577 & 8 & 9 \
\hline \[-1.8ex]
\end{tabular}
\caption{summary statistic}
\label{}
\end{table}
HTH
安德烈亚斯
您想在对 stargazer()
的调用中更改 note
参数,例如
stargazer(df,summary = TRUE, type = "latex",
title = "summary statistic",
notes = "put your summary statistic note here"
)
我也想做同样的事情,所以来到SO寻找答案。由于没有现成的答案,这是我的方法。基本思想是编写一个函数来捕获 re-creates stargazer
输出,将标题和标签移动到底部:
caption_at_bottom <- function(expr) {
x <- capture.output(expr)
cap <- grep("\\caption", x)
lab <- grep("\\label", x)
last <- grep("\\end\{table", x)
cat(
paste(
c(x[-last], x[cap], x[lab], x[last])[-c(cap, lab)]
, collapse = "\n")
, "\n")
}
使用你的例子:
caption_at_bottom(
stargazer(df, summary = TRUE, type = "latex", header = F,
title = "summary statistic")
)
# \begin{table}[!htbp] \centering
# \begin{tabular}{@{\extracolsep{5pt}}lccccc}
# \[-1.8ex]\hline
# \hline \[-1.8ex]
# Statistic & \multicolumn{1}{c}{N} & \multicolumn{1}{c}{Mean} & \multicolumn{1}{c}{St. Dev.} & \multicolumn{1}{c}{Min} & \multicolumn{1}{c}{Max} \
# \hline \[-1.8ex]
# a & 3 & 2.000 & 1.000 & 1 & 3 \
# b & 3 & 3.333 & 1.528 & 2 & 5 \
# c & 3 & 8.333 & 0.577 & 8 & 9 \
# \hline \[-1.8ex]
# \end{tabular}
# \caption{summary statistic}
# \label{}
# \end{table}
我正在使用 r 中的 stargazer 包来生成乳胶文档的汇总统计信息。但是,该函数生成的乳胶代码的标题 (caption) 位于 table 之上。有没有一种简单的方法可以将标题放在 table 下方?
require(stargazer)
df <- data.frame(a=c(1,2,3),
b=c(2,3,5),
c=c(8,8,9))
stargazer(df,summary = TRUE, type = "latex",
title = "summary statistic")
函数的输出如下:
\begin{table}[!htbp] \centering
\caption{summary statistic}
\label{}
\begin{tabular}{@{\extracolsep{5pt}}lccccc}
\[-1.8ex]\hline
\hline \[-1.8ex]
Statistic & \multicolumn{1}{c}{N} & \multicolumn{1}{c}{Mean} & \multicolumn{1}{c}{St. Dev.} & \multicolumn{1}{c}{Min} & \multicolumn{1}{c}{Max} \
\hline \[-1.8ex]
a & 3 & 2.000 & 1.000 & 1 & 3 \
b & 3 & 3.333 & 1.528 & 2 & 5 \
c & 3 & 8.333 & 0.577 & 8 & 9 \
\hline \[-1.8ex]
\end{tabular}
\end{table}
请注意标题位于 table 之上。我想要的是以下内容:
\begin{table}[!htbp] \centering
\begin{tabular}{@{\extracolsep{5pt}}lccccc}
\[-1.8ex]\hline
\hline \[-1.8ex]
Statistic & \multicolumn{1}{c}{N} & \multicolumn{1}{c}{Mean} & \multicolumn{1}{c}{St. Dev.} & \multicolumn{1}{c}{Min} & \multicolumn{1}{c}{Max} \
\hline \[-1.8ex]
a & 3 & 2.000 & 1.000 & 1 & 3 \
b & 3 & 3.333 & 1.528 & 2 & 5 \
c & 3 & 8.333 & 0.577 & 8 & 9 \
\hline \[-1.8ex]
\end{tabular}
\caption{summary statistic}
\label{}
\end{table}
HTH 安德烈亚斯
您想在对 stargazer()
的调用中更改 note
参数,例如
stargazer(df,summary = TRUE, type = "latex",
title = "summary statistic",
notes = "put your summary statistic note here"
)
我也想做同样的事情,所以来到SO寻找答案。由于没有现成的答案,这是我的方法。基本思想是编写一个函数来捕获 re-creates stargazer
输出,将标题和标签移动到底部:
caption_at_bottom <- function(expr) {
x <- capture.output(expr)
cap <- grep("\\caption", x)
lab <- grep("\\label", x)
last <- grep("\\end\{table", x)
cat(
paste(
c(x[-last], x[cap], x[lab], x[last])[-c(cap, lab)]
, collapse = "\n")
, "\n")
}
使用你的例子:
caption_at_bottom(
stargazer(df, summary = TRUE, type = "latex", header = F,
title = "summary statistic")
)
# \begin{table}[!htbp] \centering
# \begin{tabular}{@{\extracolsep{5pt}}lccccc}
# \[-1.8ex]\hline
# \hline \[-1.8ex]
# Statistic & \multicolumn{1}{c}{N} & \multicolumn{1}{c}{Mean} & \multicolumn{1}{c}{St. Dev.} & \multicolumn{1}{c}{Min} & \multicolumn{1}{c}{Max} \
# \hline \[-1.8ex]
# a & 3 & 2.000 & 1.000 & 1 & 3 \
# b & 3 & 3.333 & 1.528 & 2 & 5 \
# c & 3 & 8.333 & 0.577 & 8 & 9 \
# \hline \[-1.8ex]
# \end{tabular}
# \caption{summary statistic}
# \label{}
# \end{table}