使用gtsummary格式化多项回归表格:移除NA行及添加伪R²
多项回归表格问题解决办法
1. 移除glance表格中的NA行
出现NA行是因为multinom模型的默认glance输出包含了无意义的NA统计项,即便指定了c(nobs, AIC),部分版本的gtsummary仍会带出这些行。直接用modify_table_body过滤掉值为NA的行即可:
tbl1 <- tbl_regression(H1, exponentiate = TRUE)%>% add_significance_stars(hide_se = FALSE, hide_ci = FALSE) %>% bold_labels() %>% italicize_levels()%>% add_glance_table(c(nobs, AIC)) %>% # 移除value为NA的行 modify_table_body(filter, !is.na(value))
2. 若无法移除,修改NA内容
如果上述方法未生效,直接将NA替换为你需要的内容(比如空字符串):
tbl1 <- tbl_regression(H1, exponentiate = TRUE)%>% add_significance_stars(hide_se = FALSE, hide_ci = FALSE) %>% bold_labels() %>% italicize_levels()%>% add_glance_table(c(nobs, AIC)) %>% # 将NA替换为空白 modify_table_body(mutate, value = ifelse(is.na(value), "", value))
3. 在glance表格中添加伪R²
多分类回归常用McFadden伪R²,借助DescTools包的PseudoR2函数计算后,通过add_glance_table的自定义参数添加:
先安装依赖包:
install.packages("DescTools")
再修改代码:
tbl1 <- tbl_regression(H1, exponentiate = TRUE)%>% add_significance_stars(hide_se = FALSE, hide_ci = FALSE) %>% bold_labels() %>% italicize_levels()%>% add_glance_table( c(nobs, AIC), # 添加McFadden伪R² list( "McFadden's Pseudo R²" = ~ DescTools::PseudoR2(H1, "McFadden") ) ) %>% # 按需过滤NA行 modify_table_body(filter, !is.na(value))
内容的提问来源于stack exchange,提问作者user17073706
相关产品推荐
相关产品推荐

