нет smd (стандартизированных средних различий), показанных tableone ::CreateTableOne

#r #smd

#r #smd

Вопрос:

В R я пытаюсь использовать tableone ::CreateTableOne для вычисления smd (стандартизированных средних различий) в фрейме данных. Я использовал этот учебник (https://cran.r-project.org/web/packages/tableone/vignettes/smd.html ) — код запускается и красиво выдает желаемую выходную таблицу, включая smd.

Однако, если я использую свои собственные данные, например, приведенные ниже тестовые данные, я получаю таблицу, но без smd. Возможно, я допустил какую-то глупую ошибку, но, перепробовав множество вещей (только числовой, меньший или больший набор данных, категориальные переменные как фактор (как в справке r) или символ (как в учебнике) …) Я не могу понять, почему я не получаю smd.

 # package tableone for CreateTableOne
if (!require("tableone"))  install.packages("tableone");  library("tableone") 
# producible test data
set.seed(1234)
d <- data.frame(age = rnorm(n = 200, mean = 50, 9),
                hair = as.factor(sample(x = c("brown", "black", "blond"), 200, replace = T)),
                group = sample(x = c("sick", "healthy"), 200, replace = T))
str(d)
# calculate and print the table
tabUnmatched <- tableone::CreateTableOne(vars = c("age", "hair"), strata = "group", data = d, test = FALSE, smd = TRUE)
print(tabUnmatched)
  

результаты в следующей таблице БЕЗ smd (и без сообщения об ошибке):

                  Stratified by group
                  healthy       sick         
  n                  90           110        
  age (mean (SD)) 49.18 (7.97)  49.72 (10.10)
  hair (%)                                   
     black           30 (33.3)     35 (31.8) 
     blond           33 (36.7)     43 (39.1) 
     brown           27 (30.0)     32 (29.1) 
  

Что я делаю не так, что мне нужно сделать, чтобы получить smd-вывод?

Ответ №1:

ошибка … это?

 print(tabUnmatched, smd = TRUE)

                Stratified by group
                  healthy       sick          SMD   
  n                  90           110               
  age (mean (SD)) 49.18 (7.97)  49.72 (10.10)  0.059
  hair (%)                                     0.050
     black           30 (33.3)     35 (31.8)        
     blond           33 (36.7)     43 (39.1)        
     brown           27 (30.0)     32 (29.1)  
  

Комментарии:

1. Да. Проблема решена. Только что понял, что есть специальная печать. Форма tableOne для печати, принимающая smt = T (которую я пропустил в руководстве), а также множество других аргументов! Хотя там упоминается, я бы не сказал, что это было переоценено в файле справки.