Knitr Kable форматирует текст ячейки как упорядоченный список - PullRequest
2 голосов
/ 04 августа 2020

Я создаю таблицу в документе rmarkdown / html, и она непреднамеренно меняет значения ячеек на упорядоченный список, например, в формате (123). Пример ниже. Любая помощь будет приветствоваться.

вывод здесь

---
output: html_document
---

df <-
  data.frame(
    col1 = c("a", "b"),
    col2 = c("(123)", "(61)"),
    stringsAsFactors = FALSE
    )

knitr::kable(
  df,
  format = "html",
  align = c('lr')
)

Ответы [ 2 ]

1 голос
/ 04 августа 2020

Другой подход - отключить расширение fancy_lists. Это будет применяться к документу глобально, поэтому вы можете предпочесть решение @ MartinSchmelzer.

Просто поместите это в свой YAML:

output: 
  html_document:
    md_extensions: "-fancy_lists"

После того, как вы это сделаете, вы получите только упорядоченные списки с числами (без букв и римских цифр), и они должны быть в формате 1., а не (1) или 1), и т.д. c.

1 голос
/ 04 августа 2020

Значения распознаются как markdown, а pando c считает, что (123) и (61) являются элементами списка. Попробуйте

df <- data.frame(col1 = c("a", "b"),
                 col2 = c("(123)", "(61)"),
                 stringsAsFactors = F)

df$col2 <- gsub("\\(", "&lpar;", df$col2)
df$col2 <- gsub("\\)", "&rpar;", df$col2)

заменить круглые скобки на их HTML код объекта .

Примечание. stringsAsFactors = F - это новое значение по умолчанию в R> 4,0

...