tbl_svysummary处理缺失数据报错,tbl_summary仅触发警告
gtsummary包中tbl_svysummary与tbl_summary处理缺失值的行为差异及报错问题
使用gtsummary包的tbl_svysummary()函数时,若源数据包含缺失值会触发报错;但同包的tbl_summary()函数仅会抛出警告,并在后台自动过滤缺失数据。
可复现代码示例
database = data.frame( INDIV_AGE = rnorm(100, mean = 50, sd = 4), INDIV_GENDER = rbinom(n = 100, size=1, prob = 0.6), PAIN_SCALE = factor(sample(c("Low", "Elevated"), size = 100, replace = T)), FLOWER_COLOR = factor(sample(c("Blue", "Red"), size = 100, replace = T)), poids = rnorm(100, mean = 2, sd = 0.8) ) database[1, "INDIV_GENDER"] = NA # 移除这行代码则运行正常 design = survey::svydesign( id = ~1, weights = ~poids, data = database ) design |> gtsummary::tbl_svysummary( by = "INDIV_GENDER" )
执行结果
运行上述代码后,工具先抛出常规警告:
1 missing rows in the "INDIV_GENDER" column have been removed.
随后触发报错:
Error in model.frame.default(formula = weights ~ ..ard_total_n.., data = model.frame(design), : variable lengths differ (found for '..ard_total_n..')
不确定该表现是否属于预期行为,想咨询是否需要在GitHub提交issue。
内容的提问来源于stack exchange,提问作者Sigil
相关产品推荐
相关产品推荐

