gtsummary: подгонка широкой таблицы в выводе Markdown PDF - PullRequest
3 голосов
/ 13 апреля 2020

Я пытаюсь создать таблицу характеристик пациентов (таблица 1), которая работает, но поскольку моя переменная "по" имеет 10 категорий, она выливается из страницы PDF.

Я пытался усечь названия категорий, а также изменить макет страницы на альбомную, но 1 категория по-прежнему отсутствует на странице.

Не могли бы вы показать мне, как я могу это исправить?

Есть ли способ, которым я Можно ли напечатать N и N (%), которые по умолчанию появляются в заголовках столбцов, чтобы отображаться сразу под именем столбца, а не в одной строке, чтобы сократить ширину? Например, что в ваших примерах:

Препарат A, N = 98 (49%) 1 Препарат B, N = 102 (51%) 1

. Будет:

Препарат A _ _ _ _ _ _ _ _ _ _ Препарат B

N = 98 (49%) 1 _ _ _ _ _ N = 102 (51%) 1

Спасибо

1 Ответ

3 голосов
/ 13 апреля 2020

Сначала давайте рассмотрим вопрос о ширине столбца. В настоящее время мы готовим новую версию gtsummary для выпуска в CRAN на следующей неделе. В новой версии появилась функция as_kable_extra(), которая преобразует объект gtsummary в kable и добавляет дополнительное форматирование с помощью kableExtra. Вы можете использовать эту функцию, чтобы преобразовать ваш объект gtummary для использования с kableExtra, а затем уменьшить размер шрифта, чтобы подогнать таблицу. Установите dev-версию gtsummary из GitHub с remotes::install_github("ddsjoberg/gtsummary")

Вот пример кода:

library(gtsummary)

# build a tbl_summary object
trial %>%
  select(trt, age, grade, response) %>%
  tbl_summary(by = trt, missing = "no") %>%
  # style the output with custom header
  modify_header(stat_by = "{level}") %>%
  # convert to kableExtra
  as_kable_extra(booktabs = TRUE) %>%
  # reduce font size to make table fit. 
  # you may also use the `latex_options = "scale_down"` argument here.
  kableExtra::kable_styling(font_size = 7)

Аналогичные результаты можно получить, используя функцию as_flextable(), затем используя функции форматирования, доступные из гибкий пакет.

Что касается разрывов строк в заголовке ... на данный момент это невозможно. НО, это выглядит довольно просто реализовать в функции as_kable_extra() (http://haozhu233.github.io/kableExtra/best_practice_for_newline_in_latex_table.pdf). Если у меня будет время, я добавлю эту функцию до выхода на следующей неделе.

Счастливого кодирования!

...