Как изменить имя строки в tbl_regression?

В примере онлайн есть:

mod1 <- glm(response ~ trt + age + grade, trial, family = binomial)

t1 <- tbl_regression(mod1, exponentiate = TRUE)

Он создает красивую таблицу регрессии, которая работает, но как я могу написать код, чтобы просто отображать оценку 1 вместо всех оценок с 1 по 3. И, если была строка, которая была изначально двоичной (0 или 1), как можно Я выбираю только настоящий?

Я попробовал label = list(.....) а также value = list(...), но это не вариант, который я видел в информации о пакете для gtsummary, и не сработало, когда я попробовал. Должен быть простой способ сделать это, иначе я недостаточно усердно ищу в описании. Спасибо!

1 ответ

Вопрос 1: Оценка - это переменная с тремя уровнями, и вы хотите отобразить этот результат в одной строке. Вы можете использовать тест отношения Вальда или отношения правдоподобия, чтобы проверить значимость оценки в целом, и вывести единственное значение p с помощьюcombine_terms()функция. Обратите внимание, что вы больше не увидите 2 бета-коэффициентов, связанных с Grade II и Grade III.

Вопрос 2: tbl_regression() модель напечатает результаты, как они были введены в glm(). Числовые переменные интерпретируются как непрерывные и печатаются в одной строке. Все остальные печатаются в несколько строк. Если у вас есть переменная с кодом 0/1, она будет напечатана в одной строке. Чтобы показать оба уровня, вы можете добавитьfactor()вокруг него. Если вы находитесь в противоположной ситуации, когда двоичная переменная печатается в нескольких строках и вы хотите, чтобы она отображалась в одной строке, вы можете использоватьtbl_regression(show_single_row=) аргумент.

Пример 1. Показать оценку в одной строке с печатью по умолчанию для "trt" (персонаж) и "death" (числовой 0/1). "trt" печатает в два ряда, и "death" печатает в одной строке.

library(gtsummary)
glm(response ~ trt + grade + death, trial, family = binomial) %>%
  tbl_regression(exponentiate = TRUE) %>%
  combine_terms(formula_update = . ~ . - grade, test = "LRT")

Пример 2: Теперь напечатаем "trt" в одном ряду и "death" печатает в два ряда.

glm(response ~ trt + factor(death), trial, family = binomial) %>%
  tbl_regression(
    exponentiate = TRUE,
    show_single_row = trt,
    label = list(
      trt ~ "Drug B vs A (reference group)",
      `factor(death)` ~ "Death"
    )
  ) 

Другие вопросы по тегам