在R Markdown

时间:2015-11-10 00:48:39

标签: r markdown pander

我正在尝试将R Markdown中的两个表合并到一个表中,一个在另一个表之下。保留标题。下图显示了所需的输出。放下我的降价代码后,我将显示实际输出。我意识到我构建pander语句的方式不允许我得到我想要的输出但是搜索我没有成功找到正确的方法。

我可以在Word中进行一些后期处理,以完全按照我的要求获得输出,但我试图避免这种开销。

testdat.RData 文件位于:https://drive.google.com/file/d/0B0hTmthiX5dpWDd5UTdlbWhocVE/view?usp=sharing

R Markdown RMD 文件位于:https://drive.google.com/file/d/0B0hTmthiX5dpSEFIcGRNQ1MzM1E/view?usp=sharing

所需输出

Desired Output

```{r,echo=FALSE,message = FALSE, tidy=TRUE}
library(pander)
load("testdat.RData")
pander::pander(t1,big.mark=',', justify=c('left','right','right','right'))
pander::pander(t2,big.mark=',', justify=c('left','right','right','right'))
```

实际输出

Actual Output

谢谢,

克里希南

2 个答案:

答案 0 :(得分:0)

以下是我使用xtable包的尝试:

```{r,echo=FALSE, message = FALSE, results="asis"}
library(xtable)

# Add thousands separator
t1[-1] = sapply(t1[-1], formatC, big.mark=",")
t2[-1] = sapply(t2[-1], formatC, big.mark=",")

t1$Mode = as.character(t1$Mode)

# Bind together t1, extra row of column names, and t2
t1t2 = rbind(t1, names(t1), t2)

# Render the table using xtable
print(xtable(t1t2, align="rrrrr"), # Right-align all columns (includes extra value for row names)
      include.rownames=FALSE, # Don't print rownames
      hline.after=NULL, 
      # Add midrules before/after each set column names
      add.to.row = list(pos = list(-1,0,4,5),
                        command = rep("\\midrule \n",4)))
```

这是输出:

enter image description here

答案 1 :(得分:0)

请允许我做出正式回答,因为我的评论似乎对您有用。

pander(rbind(t1,names(t2),t2))