【问题标题】:Create variable group headings and indent labels in table在表格中创建可变组标题和缩进标签
【发布时间】:2018-10-12 22:17:37
【问题描述】:

我在 Stata 中生成一个均值表,并在以某种方式对其进行格式化后尝试将其导出为 TeX 文件。我正在使用 community-contributed estout 系列命令来执行此操作,并且我非常接近获得我想要的结果。

但是,我不知道如何在生成的输出中插入一些额外的行和标签。

我试过下面的代码:

eststo  clear
eststo, title("Mean"): estpost sum Male Female Race1 Race2 Age1-Age6 Education1-Education6
esttab using "${outdir}\Demographic.tex", label mtitles title(Demographic Information) ///
main(mean) b(2) nostar nogaps nonote replace

以上代码生成下表:

我想要的是在一个组中呈现不同的变量。例如,MaleFemale 应在“性别”标题下缩进,其他变量应在“种族”、“年龄”和“教育”标题下缩进。

当然。我可以在TeX 代码中手动添加这些行并缩进这些变量,但我想从 Stata 生成完全格式化的表。

有办法吗?

【问题讨论】:

    标签: stata


    【解决方案1】:

    estout 命令不直接支持此功能,但以下是使用人工生成数据的玩具示例演示的解决方法:

    clear
    set obs 246
    
    local vars Male Female Race1 Race2 Age1 Age2 Age3 Age4 Age5 Age6 Education1 /// 
          Education2 Education3 Education4 Education5 Education6
    
    foreach var of local vars {
        generate `var' = runiform()
        label variable `var' "     `var'"
    }
    
    eststo clear
    eststo, title("Mean"): estpost sum Male Female Race1 Race2 Age1-Age6 Education1-Education6
    
    esttab, label mtitles title(Demographic Information) main(mean) b(2) nostar nogaps nonote ///
    refcat(Male "Gender" Race1 "Race" Age1 "Age" Education1 "Education", nolabel)
    

    这里的想法是在每个变量的标签中引入间距,然后指示esttab 在每个组之前创建“参考类别”。

    上面的代码 sn -p 产生了想要的输出:

    Demographic Information
    ---------------------------------
                                  (1)
                                 Mean
    ---------------------------------
    Gender                           
         Male                    0.52
    
         Female                  0.55
    
    Race                             
         Race1                   0.51
    
         Race2                   0.46
    
    Age                              
         Age1                    0.48
    
         Age2                    0.47
    
         Age3                    0.51
    
         Age4                    0.48
    
         Age5                    0.50
    
         Age6                    0.52
    
    Education                        
         Education1              0.51
    
         Education2              0.52
    
         Education3              0.50
    
         Education4              0.48
    
         Education5              0.48
    
         Education6              0.50
    
    ---------------------------------
    Observations                  246
    ---------------------------------
    

    请注意,可用空间是固定的,因此您可能需要缩短一些标签。此外,对于较长的标签,您需要调整间距以使它们与其他标签对齐。


    编辑:

    为了让LaTeX 正确排版空格,您需要使用适当的标记在每个变量的标签中引入它们,如下所示:

    label variable `var' "\hspace{0.5cm}`var'"
    

    【讨论】:

    • 你太棒了!
    猜你喜欢
    • 2023-03-03
    • 2020-05-20
    • 2017-10-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-11-10
    相关资源
    最近更新 更多