如何用modelsummary的shape参数替代已弃用的modelsummary_wide展示多分类logit结果?
使用modelsummary的shape参数替代弃用的modelsummary_wide展示多分类Logit模型结果
- 原
modelsummary_wide()函数已被官方弃用,现在可以通过modelsummary()的shape = "rwide"参数实现将因变量因子水平作为列展示的宽格式表格效果。 - 以下是修改后的完整代码,
modelsummary会自动处理系数、标准误及显著性星号,无需手动计算p值(若需自定义统计量可通过相关参数调整):
library("nnet") library("modelsummary") # 拟合多分类Logit模型,trace=FALSE关闭拟合过程的冗余输出 multi <- multinom(DV ~ var1, data = wave1, trace = FALSE) # 使用shape="rwide"生成宽格式结果表格 modelsummary(multi, output = "gt", stars = TRUE, shape = "rwide")
- 参数说明:
shape = "rwide":核心参数,将因变量的每个因子水平作为独立列展示,完全替代原modelsummary_wide()的功能stars = TRUE:保留显著性星号标注逻辑output = "gt":维持原代码的gt格式输出
如果需要在表格中展示手动计算的p值,可通过statistic参数自定义统计量:
# 提取模型系数、标准误并手动计算p值 coef_mat <- summary(multi)$coefficients se_mat <- summary(multi)$standard.errors alpha <- coef_mat / se_mat p_values <- (1 - pnorm(abs(alpha))) * 2 # 自定义统计量,将标准误和手动计算的p值加入表格 modelsummary(multi, output = "gt", stars = TRUE, shape = "rwide", statistic = list( "Std. Error" = se_mat, "p-value" = p_values ))
内容的提问来源于stack exchange,提问作者Reuben Long
相关产品推荐
相关产品推荐

