8

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

给定数据框dataFramesummary(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 
4

1 回答 1

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
于 2013-02-09T20:27:46.360 回答