我刚刚发现了精彩的套餐比较组,我认为这对我未来有很大的帮助。到目前为止,它与Knitr / Sweave结合使用非常出色:
\documentclass{article}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% LaTeX packages needed for compareGroups
% long tables
\usepackage{longtable}
% multi row
\usepackage{multirow}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\begin{document}
% R code
<<results = "asis">>=
library(compareGroups)
# Very short code for bivariate descriptive table
tab <- compareGroups(vs ~ . , data = mtcars)
export2latex(createTable(tab))
@
\end{document}
我只有两个问题,即i)表头的修改(例如我想打印&#34; P值&#34;而不是&#34; p.overall&#34;)ii)添加多列子文本(例如&#34; t-test用于计算P值。&#34;)。如果我只是将表格导出到LaTeX Code,那么修改head和subtext很容易,但是与Knitr结合使用时我不知道如何处理它。我真的很感激这种与费力的功能相结合的精彩解决方案。 Xtables包。
非常感谢你的帮助!
答案 0 :(得分:2)
关注i)可以通过在调用tab$descr
之前手动重新分配矩阵export2latex
的第3列的名称来处理。关注ii)可能会通过将文本放在标题中来解决(在我看来更合适 - 而且我不知道如何将其粘贴到multicol子标题中)。
tab <- compareGroups(vs ~ . , data = mtcars)
tab <- createTable(tab)
colnames(tab$descr)[3] <- "P value"
export2latex(tab, caption="$t$-test was used to calculate $p$ values.",
loc.caption="bottom")
关于你的请求(下面)实际上要添加两个标题(表格上方的编号标题和表格下方的非编号解释性子文本),实现此目的的一种方法是封装{{1在{可能居中的} longtable
环境中由export2latex
生成,并将第二个标题作为普通文本放在表格下方:
minipage
参考文献:
https://tex.stackexchange.com/questions/15282/tabular-title-above-and-caption-below