【发布时间】:2016-10-21 10:04:46
【问题描述】:
我有一个数据框,我想在 Rmarkdown 中将它变成一个右对齐的表格
---
title: "Test"
output:
pdf_document
---
```{r testing, results='asis'}
library(xtable)
df <- structure(list(ID = c(101L, 102L, 103L, 104L, 105L, 106L),
Gr1 = c(10.76,983.4, 34.000, 20, 23.8457, 13.32),
Gr2 = c(NA,NA, NA, 20L, NA, NA)
),
.Names = c("ID", "Grade1", "Grade2"),
class = c("tbl_df", "data.frame"),
row.names = c(NA, -6L))
xtable(df,
align = c('l', 'p{1.5in}', rep('r{0.5in}',2)),
digits=c(0,0,1,0))
```
这给了我rep('r{0.5in}',2) 的错误
! LaTeX Error: Illegal character in array arg.
我也试过了:align = c('l|', 'p{1.5in}|', rep('R{0.5in}|',2))
以下工作正常:align = c('l', 'p{1.5in}', rep('p{0.5in}',2))
但是数据是左对齐的
【问题讨论】:
-
我不明白你的意思:如果你想把最后两列放在右边,那么
rep('r',2)。只有参数p有宽度参数。 -
但这不会去掉最后两列的宽度参数吗?我需要宽度和右对齐
-
r,l,c默认情况下不采用宽度参数。您需要创建一个自定义列类型,例如R,L,C以获得所需的结果,您可以找到 Here
标签: r r-markdown xtable