我想在我使用tabular(){tables}在R sweave文档中创建的复杂表中添加一个额外的\hline
。
以Iris数据为例:我想在 Iris setosa 下面添加一条额外的水平线,只包含列,而不是行名。目前,我有这个:
生成表格的代码:
\begin{table}
\begin{center}
<<iristable, eval=TRUE, echo=FALSE, results='asis', message=FALSE>>=
library(Hmisc) ; library(tables)
tab.obj <- tabular( Species ~ (Heading("Mean")*
(Heading("")*mean*Sepal.Width +
Heading("")*mean*Sepal.Length)) +
(Heading("Median")*
(Heading("")*median*Sepal.Width +
Heading("")*median*Sepal.Length)),
data=iris)
nicetable<- booktabs() ## needs LaTex package \usepackage{booktabs}
table_options(nicetable)
table_options(titlerule="\\cmidrule(lr)")
latex(tab.obj)
@
\caption{This table is just an example.}
\end{center}
\label{tab:example_table}
\end{table}
我想这一定是可能的,但我不太清楚如何。
答案 0 :(得分:0)
查看函数tables:::latex.tabular
有一种计算titlerule的cline参数的方法,
titlerules <- sprintf("%s%s{%d-%d}", titlerules,
opts$titlerule, firstcol, firstcol +
ncols - 1)
但不是中等规则。所以你必须手动完成......这里使用
table_options(midrule =&#34; \ cmidrule(LR){2-3} \ cmidrule(LR){4-5}&#34)
\begin{table}
\begin{center}
<<iristable, eval=TRUE, echo=FALSE, results='asis', message=FALSE>>=
library(Hmisc) ; library(tables)
tab.obj <- tabular( Species ~ (Heading("Mean")*
(Heading("")*mean*Sepal.Width +
Heading("")*mean*Sepal.Length)) +
(Heading("Median")*
(Heading("")*median*Sepal.Width +
Heading("")*median*Sepal.Length)),
data=iris)
nicetable<- booktabs() ## needs LaTex package \usepackage{booktabs}
table_options(nicetable)
table_options(titlerule="\\cmidrule(lr)")
table_options(midrule="\\cmidrule(lr){2-3}\\cmidrule(lr){4-5}")
latex(tab.obj)
@
\caption{This table is just an example.}
\end{center}
\label{tab:example_table}
\end{table}