如何在 R 中为数据 table 中的每一行创建子类别

How to create subcategories for each row in a data table in R

我正在尝试创建一个数据 table 将每个可变行分类为 2 个不同的子组。这是一个可重现的示例,希望能阐明我想做什么。

table <- mtcars %>% 
  group_by(vs) %>% 
  summarise(MPG=mean(mpg),DRAT=mean(drat))

table=t(table)
table

          [,1]      [,2]
vs    0.000000  1.000000
MPG  16.616667 24.557143
DRAT  3.392222  3.859286 

#here is what I would like the output to look like, but am unsure how to do create it (some of these numbers I just made up) 

                    **[,1]      [,2]
vs               0.000000  1.000000
MPG (overall)   16.616667 24.557143**
   MPG (am=1)         14        13 
   MPG (am=0)         11        12 
**DRAT (overall) 3.392222  3.859286**  
   DRAT (am=1)        3.1       3.6 
   DRAT (am=0)         4          4 

因此,考虑到 table,我想针对 MPG 和 DRAT 变量对其进行修改,对于数据集。我很难告诉 R 为 vs 变量设置列组,并且还分别分析每行的 am 组(0 或 1)并将其显示在 table 中。谢谢!

您可以使用 tables package :

tabular((mpg+drat)*(am=factor(am)+1)~(vs=factor(vs)*(mean)), data=mtcars)
                       
          vs           
          0      1     
      am  mean   mean  
 mpg  0   15.050 20.743
      1   19.750 28.371
      All 16.617 24.557
 drat 0    3.121  3.570
      1    3.935  4.149
      All  3.392  3.859