RMarkdown:带有数学符号和长文本的表格

时间:2017-08-06 03:04:29

标签: r r-markdown

首先,我要说我是一名使用RMarkdown的初学者。

说,我已经将自己介绍到那个世界,以便学习如何制作报告。到目前为止,我已经学会了基础知识(数学符号,一些文本格式),但我不能像过去那样创建表格。

我已经使用knitr::kable()创建了一个表但没有数学符号:

```{r table1, echo=F, warning=FALSE, message=F}

library(knitr)
library(dplyr)
library(kableExtra)
text_tbl <- data.frame(
        'Nro'=1:2,
        'Obj'= c(
                "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse id dolor id arcu pellentesque ullamcorper sit amet sit amet tortor. Quisque quis ligula non turpis faucibus rhoncus. Vestibulum lacinia laoreet massa eget semper.   ",
                "Phasellus aliquam mauris dui, id sagittis velit blandit sit amet. Etiam posuere elementum magna, eu fermentum dolor aliquet vitae. Maecenas ultricies orci quam, eu ultricies augue efficitur non. Suspendisse ligula diam, luctus quis tempus et, venenatis in orci.  ")
)

kable(text_tbl, 'latex', 
      booktabs=T,
      caption = 'Table example') %>%
  kable_styling(full_width = F) %>%
  column_spec(1, bold = T) %>%
  column_spec(2, width = '14cm')
```

现在我要重现此表:

第一张表的方法不会起作用,因为这个新表包含数学符号。

我尝试过管道表,但是第三列太长并且不能工作(似乎它只适用于表格内的短文本)而且数学符号出现了奇怪的事情。

有什么建议吗?

1 个答案:

答案 0 :(得分:3)

您可以在escape中将FALSE设置为kable以输入数学公式。

text_tbl <- data.frame(
    'Nro'=1:2,
    'value' = c("a = $\\frac{1}{2}$", "b = $\\frac{2}{3}$"),
    'Obj'= c(
            "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse id dolor id arcu pellentesque ullamcorper sit amet sit amet tortor. Quisque quis ligula non turpis faucibus rhoncus. Vestibulum lacinia laoreet massa eget semper.   ",
            "Phasellus aliquam mauris dui, id sagittis velit blandit sit amet. Etiam posuere elementum magna, eu fermentum dolor aliquet vitae. Maecenas ultricies orci quam, eu ultricies augue efficitur non. Suspendisse ligula diam, luctus quis tempus et, venenatis in orci.  ")
)

kable(text_tbl, 'latex', 
  booktabs=T, escape = F, 
  caption = 'Table example') %>%
  kable_styling(latex_options = "hold_position", full_width = F) %>%
  column_spec(1, bold = T) %>%
  column_spec(3, width = '14cm')