其中包括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更多信息以找到它