R:格式化数据框摘要

时间:2013-02-09 20:12:11

标签: r

摘要:控制摘要(dataFrame)调用的输出格式。

鉴于数据框 dataFrame 摘要(dataFrame)会创建一个仅在 dataFrame 中的列数为小。

问题:

如何生成一次包含1个事实的输出?

例如:

dataFrame  <- data.frame(x=rnorm(100), y=rnorm(100), z=rnorm(100));
summary(dataFrame);

给出:

       x                  y                  z          
 Min.   :-2.13427   Min.   :-2.12077   Min.   :-2.4453  
 1st Qu.:-0.53324   1st Qu.:-0.78915   1st Qu.:-0.4100  
 Median : 0.05675   Median :-0.22321   Median : 0.1356  
 Mean   : 0.09102   Mean   :-0.04939   Mean   : 0.1306  
 3rd Qu.: 0.69685   3rd Qu.: 0.58358   3rd Qu.: 0.7847  
 Max.   : 2.48204   Max.   : 2.65971   Max.   : 2.0504  

,所需的输出为:

      x          
Min.   :-2.13427 
1st Qu.:-0.53324 
Median : 0.05675 
Mean   : 0.09102 
3rd Qu.: 0.69685 
Max.   : 2.48204 

      y
Min.   :-2.13427 
1st Qu.:-0.53324 
Median : 0.05675 
Mean   : 0.09102 
3rd Qu.: 0.69685 
Max.   : 2.48204 

      z
Min.   :-2.13427 
1st Qu.:-0.53324 
Median : 0.05675 
Mean   : 0.09102 
3rd Qu.: 0.69685 
Max.   : 2.48204 

1 个答案:

答案 0 :(得分:8)

您可以使用函数lapply()将函数summary()应用于每列,然后cbind()将数据显示为列。

 lapply(dataFrame,function(x) cbind(summary(x)))
$x
            [,1]
Min.    -2.09200
1st Qu. -0.56240
Median   0.07069
Mean    -0.04267
3rd Qu.  0.54060
Max.     2.07800

$y
            [,1]
Min.    -2.55200
1st Qu. -0.62190
Median  -0.07336
Mean    -0.06966
3rd Qu.  0.58540
Max.     2.07100

$z
            [,1]
Min.    -2.80800
1st Qu. -0.52890
Median  -0.03279
Mean    -0.06263
3rd Qu.  0.53730
Max.     2.88500