2017-04-10 90 views
1

给定一个data.frame A,如何使用下标的行和列名称?最终我想通过在rmarkdown(输出:word文档)中的kable()生成表格。如何从kable()中的表中标记名称?

A <- data.frame(round(replicate(3, runif(2)),2)) 
rownames(A) <- c("Hola123", "Hola234") 
A 

      X1 X2 X3 
Hola123 0.47 0.55 0.66 
Hola234 0.89 0.45 0.20 

如何通过kable(A)创建表时使行和列名称中的所有数字都下标?

我曾尝试:

rownames(A) <- c(expression(Hola["123"]), expression(Hola["234"])) 
names(A) <- c(expression(X["1"]), expression(X["2"]), expression(X["3"])) 

但是,创造穿过.rmd文件kable()表时它不出现下标。

回答

2

要在rmarkdown文档中添加下标,您可以在两个代字号之间嵌入文字:text~sub~。 使用功能kable时,表格中的任何文本都被识别为降格语法。因此,您的降价代码应该是:

```{r} 
A <- data.frame(round(replicate(3, runif(2)),2)) 
rownames(A) <- c("Hola~123~", "Hola~234~") 
names(A) <- c("X~1~", "X~2~", "X~3~") 
knitr::kable(A) 
``` 
相关问题