【问题标题】:Twoway summary statistics table for continuous variables连续变量的双向汇总统计表
【发布时间】:2018-03-24 11:30:15
【问题描述】:

为连续表创建双向汇总统计表的最佳方法是什么?例如一个看起来像的表格

           Group1           Group2          Total
      mean       sd      mean      sd     mean     sd
x1      1         2       3         4       5       6 
x2      7         7       7         7       7       7

summarize 很容易做到这一点,但没有分组。

我还查看了 tabulatetabout,但当 x1 和 x2 是离散变量时,它们似乎更相关。

如果表格可以导出为 LaTeX 文件也很好。

【问题讨论】:

    标签: stata


    【解决方案1】:

    对此并没有真正的开箱即用解决方案。曾经有latabstat,但我发现使用它不是很舒服。当我面临这样的任务时,我通常是手工完成的:

    log using table.tex, text replace
    log on
    foreach v in x1 x2 {
        di "`v' " _c 
        foreach gr in Group1 Group2 {
            qui sum `v' if `gr' == 1
            di " & " r(mean) " & " r(sd) _c
        }
        ** Total Group
        qui sum `v' 
         di " & " r(mean) " & " r(sd) " \\"
    }
    log off
    

    这样,您的表格主体就在日志文件中,可以包含在 Latex 文档中

    【讨论】:

      【解决方案2】:

      折叠可以给你想要的。您只需要确保数据组织正确。

      你的“x”应该有一个变量。然后,您只需要分别汇总为 group1、group2 和 total 的单个变量的数据。您需要复制这些变量以获得多个汇总统计信息,但随后 collapse 可以将数据折叠到汇总统计信息表中。

          clear
      
          * Generate Data
          set obs 20
          gen x = "x1" in 1/10
          replace x = "x2" in 11/20
          set seed 122
          gen m_group1 = runiform()
              gen sd_group1 = m_group1    // Duplicate data for SD column
          gen m_group2 = runiform()
              gen sd_group2 = m_group2
          gen m_total = m_group1 + m_group2
              gen sd_total = m_total
      
          collapse    (mean) m_group1 (sd) sd_group1  /// Group 1
                      (mean) m_group2 (sd) sd_group2  /// Group 2
                      (mean) m_total (sd) sd_total    /// Total Group
                      , by(x)
      

      【讨论】:

        猜你喜欢
        • 2018-10-30
        • 1970-01-01
        • 1970-01-01
        • 2015-01-04
        • 2017-02-25
        • 1970-01-01
        • 1970-01-01
        • 2018-11-11
        • 1970-01-01
        相关资源
        最近更新 更多