如何用表r包添加标题?

时间:2014-02-04 02:08:10

标签: r format latex

使用iris数据,我们制作一个包含tables包的表:

library(tables)
table <- tabular( (Sepal.Length+Sepal.Width) ~
           Format(format(digits=2))*(mean + sd), data=iris )

使用Hmisc包,我们会使用latex函数添加标题,如下所示:

latex(table, caption="My table")

但这不适用于tables包,因为它定义了一个S3方法,latex.tabular

所以我按照package vignette中的一个例子尝试了这个:

latex(table, options=list(toprule="\\caption{My table}"))

但它不起作用,它说标题在浮动之外。如何使用latex.tabular包中的tables函数正确添加标题?

2 个答案:

答案 0 :(得分:1)

我想出了一种方法,实际上很简单:你只需将tables包结果嵌入到乳胶代码中。

knitr的一个示例下,<< >>=r块代码。

\begin{table}
\caption{My awesome table from tables package}
\begin{center}

<<cool multilevel table, results='asis', echo=FALSE>>=
latex(table)
@

\end{center}
\label{tab:mytable}
\end{table}

这生成了这个很棒的表,现在有了标题(用葡萄牙语): enter image description here

答案 1 :(得分:0)

我发布此消息的目的是为了帮助其他人寻求帮助。我一直在努力了解表格包。我使用的工作流程是将表导出到.tex文件,然后将其拉入我用TexStudio编译的文档中。上面的解决方案不适用于此工作流程,因此我提供了一个解决方案,它将在表格下方产生标题:


latex(table, , options=list(bottomrule = "\\bottomrule\\\\
                                             \\caption{My table}")

这将产生上面的一个:


latex(table, , options=list(bottomrule = "\\caption{My table}\\\\
                                             \\toprule")