Я создаю таблицы уценки с помощью пакета pander R, в заголовках некоторых столбцов которых есть каналы (например: P> | t |). Кажется (если я что-то не упустил), что они не обрабатываются правильно ни pandoc, ни Rmarkdown из-за путаницы между разделителями столбцов и "истинными" каналами.
Рассмотрим следующий пример Rmd:
```{r message = FALSE}
library(pander)
panderOptions("table.style" , "rmarkdown")
panderOptions("table.split.table" , Inf) # avoid to split the tables
data(iris)
mod <- lm(Sepal.Length ~ Species, data = iris)
```
```{r results='asis'}
pandoc.table(summary(mod)$coefficients[,-4])
```
```{r results='asis'}
pandoc.table(summary(mod)$coefficients)
```
Последняя таблица, созданная pander, выглядит так (обратите внимание на вертикальные черты в последнем имени столбца):
| | Estimate | Std. Error | t value | Pr(>|t|) |
|------------------------:|:----------:|:------------:|:---------:|:----------:|
| **(Intercept)** | 5.006 | 0.0728 | 68.76 | 1.134e-113 |
| **Speciesversicolor** | 0.93 | 0.103 | 9.033 | 8.77e-16 |
| **Speciesvirginica** | 1.582 | 0.103 | 15.37 | 2.215e-32 |
Если я свяжу это с html (с помощью кнопки Rstudio, которая использует Rmarkdown для генерации HTML, если я не ошибаюсь), последняя таблица отображается не как таблица, а как обычный текст в выводе HTML.
Если я использую md, сгенерированный knitr, и преобразовать его в html с помощью pandoc, на выходе будет таблица, но имя последнего столбца станет "Pr (>".
Первая таблица без последнего столбца отображается правильно.