如何使用modelsummary修改回归结果表格的列标签?
解决modelsummary修改fixest多因变量模型列标签的问题
你遇到的问题是因为options(modelsummary_model_labels = "roman")的作用对象是多个独立模型的编号(比如将Model 1改为I、Model 2改为II),而不是fixest多因变量模型的列标签(lhs: mpg这类)。以下是几种可行的解决方法:
方法一:直接指定列名
在modelsummary()调用中使用model.names参数,手动设置每一列的标签:
library(fixest) library(modelsummary) mods <- feols(c(mpg, disp) ~ wt, data = mtcars) # 自定义列标签 modelsummary(mods, model.names = c("燃油效率", "发动机排量"))
方法二:批量提取并修改因变量名
如果因变量数量较多,可以自动提取模型的因变量名并生成标签:
# 提取模型的因变量名称 dv_names <- names(mods) # 移除默认的"lhs: "前缀 clean_labels <- gsub("lhs: ", "", dv_names) modelsummary(mods, model.names = clean_labels)
方法三:全局关闭"lhs: "前缀
通过设置全局选项modelsummary_fixest.lhs,直接去掉默认的"lhs: "前缀:
options(modelsummary_fixest.lhs = FALSE) modelsummary(mods)
此时列标签会直接显示mpg和disp。
内容的提问来源于stack exchange,提问作者dufei
相关产品推荐
相关产品推荐

