首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >xtable标题操作

xtable标题操作
EN

Stack Overflow用户
提问于 2012-06-20 05:10:48
回答 2查看 3.2K关注 0票数 2

我在R中使用xtable来获取表的LaTeX代码。我想修改"header“的第一个元素( LaTeX表中的第一行),但是我只看到一个向行尾添加文本的选项(使用xtable中的add.to.row )。

下面的例子应该能说明我想要的是什么。

正在运行

代码语言:javascript
复制
xtable(matrix(c(1,0.25,3,0.75),nrow=2,dimnames=list(c('absolute','relative'),c('GNU','Leo'))))

给出输出

代码语言:javascript
复制
% latex table generated in R 2.13.0 by xtable 1.5-6 package
% Tue Jun 19 22:39:49 2012
\begin{table}[ht]
\begin{center}
\begin{tabular}{rrr}
  \hline
 & GNU & Leo \\ 
  \hline
absolute & 1.00 & 3.00 \\ 
  relative & 0.25 & 0.75 \\ 
   \hline
\end{tabular}
\end{center}
\end{table}

我想接这条线

代码语言:javascript
复制
  frequency & GNU & Leo \\ 

而不是这行

代码语言:javascript
复制
  & GNU & Leo \\

但我无法使用xtable完成此操作。如果你知道怎么做,请告诉我。此外,如果我问错了地方,或者我忽略了一个答案或一个显而易见的解决方案,我提前道歉。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-06-20 05:46:46

另一种选择是使用Hmisc中的latex函数

代码语言:javascript
复制
library(Hmisc)
m <- matrix(c(1,0.25,3,0.75),nrow=2,dimnames=list(c('absolute','relative'),c('GNU','Leo')))
latex(m,file = "",rowlabel = "frequency")
票数 4
EN

Stack Overflow用户

发布于 2012-06-20 05:44:25

一种可能性是:

代码语言:javascript
复制
dat1 <- data.frame(matrix(c(1,0.25,3,0.75),nrow=2,dimnames=list(c('absolute','relative'),c('GNU','Leo'))))
dat <- data.frame(Freq = rownames(dat1), dat1)

print(
  xtable(
           x = dat
         , caption = "Your Caption"
         , label = "tab:dat"
         , align = paste(paste("l|", paste(rep("r", ncol(dat)-1), collapse=''), sep = ""), "|r", sep = "")
         , digits = c(0, rep(3, ncol(dat)))
         )
  , table.placement = "H"
  , caption.placement = "top"
  , include.rownames = FALSE
  , include.colnames = TRUE
  , size = "normalsize"
  , hline.after = c(-1, 0, nrow(dat))
  )
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11109489

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档