其中包括Hmisc、pastecs和psych。由于这些包并未包括在基础安装中。
> library(Hmisc)
> describe(mtcars[vars])
mtcars[vars]
3 Variables 32 Observations
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------
mpg
n missing unique Info Mean .05 .10 .25 .50 .75 .90 .95
32 0 25 1 20.09 12.00 14.34 15.43 19.20 22.80 30.09 31.30
lowest : 10.4 13.3 14.3 14.7 15.0, highest: 26.0 27.3 30.4 32.4 33.9
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------
hp
n missing unique Info Mean .05 .10 .25 .50 .75 .90 .95
32 0 22 1 146.7 63.65 66.00 96.50 123.00 180.00 243.50 253.55
lowest : 52 62 65 66 91, highest: 215 230 245 264 335
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------
wt
n missing unique Info Mean .05 .10 .25 .50 .75 .90 .95
32 0 29 1 3.217 1.736 1.956 2.581 3.325 3.610 4.048 5.293
lowest : 1.513 1.615 1.835 1.935 2.140, highest: 3.845 4.070 5.250 5.345 5.424
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------
>
--------------------------------------------------------------------
包中有一个名为stat.desc()的函数,它可以计算种类繁多的描述性统计量。使用
格式为:
> stat.desc(mtcars[vars],basic=TRUE,desc=TRUE,norm=FALSE,p=0.95)
其中的x是一个数据框或时间序列。若basic=TRUE(默认值),则计算其中所有值、空值、缺失
值的数量,以及最小值、最大值、值域,还有总和。若desc=TRUE(同样也是默认值),则计算
中位数、平均数、平均数的标准误、平均数置信度为95%的置信区间、方差、标准差以及变异系
数。最后,若norm=TRUE(不是默认的),则返回正态分布统计量,包括偏度和峰度(以及它们
的统计显著程度)和Shapiro–Wilk正态检验结果。这里使用了p值来计算平均数的置信区间(默
认置信度为0.95)
> library(pastecs)
> stat.desc(mtcars[vars])
mpg hp wt
nbr.val 32.0000000 32.0000000 32.0000000
nbr.null 0.0000000 0.0000000 0.0000000
nbr.na 0.0000000 0.0000000 0.0000000
min 10.4000000 52.0000000 1.5130000
max 33.9000000 335.0000000 5.4240000
range 23.5000000 283.0000000 3.9110000
sum 642.9000000 4694.0000000 102.9520000
median 19.2000000 123.0000000 3.3250000
mean 20.0906250 146.6875000 3.2172500
SE.mean 1.0654240 12.1203173 0.1729685
CI.mean.0.95 2.1729465 24.7195501 0.3527715
var 36.3241028 4700.8669355 0.9573790
std.dev 6.0269481 68.5628685 0.9784574
coef.var 0.2999881 0.4674077 0.3041285
------------------------------------------------
library(psych)
describe(mtcars[vars])
vars n mean sd median trimmed mad min max range skew kurtosis se
mpg 1 32 20.09 6.03 19.20 19.70 5.41 10.40 33.90 23.50 0.61 -0.37 1.07
hp 2 32 146.69 68.56 123.00 141.19 77.10 52.00 335.00 283.00 0.73 -0.14 12.12
wt 3 32 3.22 0.98 3.33 3.15 0.77 1.51 5.42 3.91 0.42 -0.02 0.17
在前面的示例中,psych包和Hmisc包均提供了名为describe()的函数。R如何知道该
使用哪个呢?简言之,如代码清单7-5所示,最后载入的程序包优先。在这里,psych在
Hmisc之后被载入,然后显示了一条信息,提示Hmisc包中的describe()函数被psych
包中的同名函数所屏蔽(masked)。键入describe()后,R在搜索这个函数时将首先找
到psych包中的函数并执行它。如果你想改而使用Hmisc包中的版本,可以键入
Hmisc::describe(mt)。这个函数仍然在那里。你只是需要给予R更多信息以找到它