多组和分类数据的描述性统计分析

上传人:xzh****18 文档编号:44398308 上传时间:2018-06-09 格式:PDF 页数:6 大小:191.91KB
返回 下载 相关 举报
多组和分类数据的描述性统计分析_第1页
第1页 / 共6页
多组和分类数据的描述性统计分析_第2页
第2页 / 共6页
多组和分类数据的描述性统计分析_第3页
第3页 / 共6页
多组和分类数据的描述性统计分析_第4页
第4页 / 共6页
多组和分类数据的描述性统计分析_第5页
第5页 / 共6页
点击查看更多>>
资源描述

《多组和分类数据的描述性统计分析》由会员分享,可在线阅读,更多相关《多组和分类数据的描述性统计分析(6页珍藏版)》请在金锄头文库上搜索。

1、3.2 多组和分类数据的描述性统计分析17盒子图盒子图能够直观简洁地展现数据分布的主要特征.我们在R中使用boxplot()函数作盒子图.在盒子图中,上下四分位数分别确定中间箱体的顶部和底部,箱体中间的粗线是中位数所在的位置.由箱体向上下伸出的垂直部分为“触须” (whiskers),表示数据的散布范围,其为1.5倍四分位间距内距四分位点最远的数据点.超出此范围的点可看作为异常点(outlier).3.2多组和分类数据的描述性统计分析在对于多组数据的描述性统计量的计算和图形表示方面,前面所介绍的部分方法不能够有效地使用,例如许多函数都不能直接对数据框进行操作.这时我们需要一些其他的函数配合使用

2、.1.图形表示:散点图:前面介绍的plot,可直接对数据框操作.此时将绘出 数据框中 所对应的所有变量两两之间的散点图.所做图框中第一行的散点图是以第一个变量为纵坐标,分别以第二、 三.个变量为横坐标的散点图.这里数据举例说明.library(DAAG); plot(hills)盒子图:前面介绍的boxplot,亦可直接对数据框操作,其在同一个作图区域内画出各组数的盒子图.但是注意,此时由于不同组数据的尺度可能差别很大,这样的盒子图很多时候表达出来不是很有意义. boxplot(faithful).因此这样做比较适合多组数据具有同样意义或近似尺度的情形.例如,我们想做某一数值变量在某个因子变量

3、的不同水平下的盒子图.我们可采用类似如下的命令:boxplot(skullwage, data=possum),亦可加上参数horizontal=T,将该盒子图横向放置.boxplot(possum$skullwpossum$sex, horizontal=T)条件散点图:当数据集中含有一个或多个因子变量时,我们可使用条件散点图函数coplot()作出因子变量不同水平下的多个散点图,当然该方法也适用于各种给定条件或限制情形下的作图.其调用格式为coplot(formula, data)比如coplot(possum9possum7flflflpossum4),或coplot(skullwtai

4、llflflflage, data=possum);coplot(skullwtaillflflflage+sex, data=possum)18第3章 R:描述性统计量, 绘图, 参数估计和假设检验直方图: 一个方法就是使用mfrow将绘图框分隔多个部分,然后直接反复使用hist()对各个变量做直方图.par(mfrow=c(1, 2); hist(faithful1); hist(faithful2)另一种直接方法是使用lattice包中的直方图函数, histogram(). lattice包是一个强大的绘图软件包,我们以后还会对其中的常用函数加以介绍.xpossum; histogra

5、m(x7flflflx4)密度曲线图:这里我们欲绘出某一数值变量在某个因子变量的不同水平下的密度曲线图,可采用lattice包中的densityplot,举例如下:densityplot(skullwflflflage, data=possum); densityplot(skullwflflflsex, data=possum)2.描述性统计分析:前面介绍的summary()函数可直接对数据框操作.如library(DAAG); summary(cuckoos) tapply()能够方便地对分组数据进行函数操作.a1tapply(cuckoos$length, cuckoos$species

6、, mean);a2tapply(cuckoos$length, cuckoos$species, sd);a3tapply(cuckoos$length, cuckoos$species, median);cbind(mean=a1, std=a2, median=a3)a1tapply(cuckoos$length, cuckoos$species, mean);a2tapply(cuckoos$breadth, cuckoos$species, mean);a3tapply(cuckoos$id, cuckoos$species, mean);cbind(length.mean=a1,

7、breadth.mean=a2, id.mean=a3)其它函数,如fivenum等,亦可,不过注意此时输出地是一个list.另外注意对有缺失的数据,使用na.rm=T.为了计算不同因子变量所对应的各数值变量的描述性统计量,我们还可方便地使用分组概括函数aggregate.该函数作用同tapply类似,不同的在于其对数据框直接操作,返回值也是数据框.举例来说,aggregate(cuckoos, list(species=cuckoos$species), mean)注意这里第二个参数必须是一个列表形式的,因此我们需要使用list函数将其转化.我们当然也可以才用下面的调用形式来避免使用list

8、.aggregate(cuckoos, cuckoos“species”, mean)我们前面讲过使用subset提取子数据框,是指观测来提取,即子数据框是在原数据框基础上删去部分观测;而我们亦可提取一定的变量列来构造新的数据框,比如cuckoosc(“length”, “breadth”, “id”);此时我们再使用aggregate函数aggregate(cuckoosc(“length”, “breadth”, “id”), list(species=cuckoos$species), mean)3.3 绘图19 by()函数同aggregate类似,只不过对于by,它将数据框中的每列逐

9、一处理, 这时那些不能对数据框直接操作的函数如fivenum或者median等函数亦可使用了.by(cuckoosc(“length”, “breadth”, “id”), list(species=cuckoos$species), fivenum)另外,使用tapply, aggregate,及by等函数中的用于计算的函数中要填写其他参数的,直接在函数名的后面填写,比如求分位数by(cuckoosc(“length”, “breadth”, “id”), list(species=cuckoos$species), quantile,probs=0.75)3.3绘图R提供了非常多样的绘图功

10、能.我们可以通过R提供的两组演示例子进行了解:demo(graphics):二维; demo(persp):三维.在R的作图函数中,一类是高水平作图,另一类是低水平作图,前者中的函数均可产生图形,可有坐标轴,以及图和坐标轴的说明文字等;后者自身无法生成图形,只能在前者生成的图形基础上增加新的图形.高水平作图函数:这其中包括我们前面在描述性统计分析中介绍过的各种具有特殊功能的绘图函数,如:hist(), boxplot(), qqnorm()等.我们下面对几种一般的高级绘图函数给予更详细的说明.1. plot()函数可绘出各种散点图和曲线图.(a) plot(x, y):生成y关于x的散点图.(

11、b) plot(x):生成x关于下标的散点图.x faithful; names(x)=c(“x1”, “x2”); plot(x$x1, type=“o”); plot(x$x1, x$x2);(c) plot(f):其中f是因子变量.生成f的直方图.(d) plot(f, y):生成y关于f各水平的boxplot,也就是将不同水平所对应的y各自做盒子图.library(DAAG); plot(possum4); plot(possum4, possum7)(e) plot(df),其中df是数据框.2. contour(x, y, z)绘出三维图形的等高曲线图; persp(x, y, z

12、)绘出三维图形的表面曲线.library(MASS); zkde2d(x1, x2); contour(z).这里我们使用了MASS程序包中的二维核密度估计函数kde2d()来估计二维数据的联合密度函数,再利用该函数画出密度的等高曲线图.persp(z).做出该估计的密度函数的三维图形的曲线图.20第3章 R:描述性统计量, 绘图, 参数估计和假设检验其中persp(x, y, z)常用于刻画二维密度曲线,其中两个参数theta=, phi=,用于改变图形的观察角度,使用中经常根据需要自己变动.persp(z, theta=45, phi=30, xlab=“x”, expand=0.7)3.

13、高水平绘图中的辅助命令 add=T (默认F)表示所绘图在原图上加图. axes=F (默认T)表示所绘图形没有坐标轴.我们可以用xaxt=“n”或yaxt=“n”来选择是否画横纵坐标. hist(cuckoos$length, axes=F); hist(cuckoos$length, axes=T,xaxt=“n”) main=“”图的主标题说明, sub=“”图的副标题, xlab, ylab分别是x轴, y轴的说明.plot(cuckoos$length, cuckoos$breadth, main=“length vs breadth”, sub=“”, xlab=“length”,

14、ylab=“breadth”) xlim, ylim用于指定轴的上下限.如:plot(cuckoos$length, cuckoos$breadth, ylim=c(14, 19) log=“x”, log=“y”, log=“xy”表示对x, y轴的数据取对数. type=“”表示绘图类型.常用的有p (散点图), l (实线), b (所有点被实线链接), o (实线通过所有的点)plot(cuckoos$length, type=“l”)绘图参数除了低级作图命令之外,图形的显示也可以用绘图参数来改良.绘图参数可以作为图形函数的选项,比如在plot()函数中可以指定颜色等,但不是所有参数都

15、可以在绘图函数中来指定.我们可通过使用函数par()来永久地改变绘图参数,也就是说后来的图形都将按照函数par()指定的参数来绘制.一些常用的参数设置如下,其它相关参数可参见参见其帮助.bg:背景颜色, bg=”red”; cex:控制文字大小的值; col:符号的颜色; lty:线的类型; mar:控制图形边空的4个值c(bottom, left, top, right). mfrow=c(m, n):将绘图窗口分割为m行和n列,也就是可在一个窗口内画多个图形; pch:符号的类型; lwd:控制连线宽度.另外注意,通常我们在修改par的参数之前,先将默认值赋值给某变量,如oppar(),在

16、某一个图做完之后,可使用par(op),还原到默认状态.低水平作图函数1. points(x, y), lines(x, y)分别是加点和加线函数,即在已有的图上加点或者加线. x, y分别是横纵坐标数值或向量,函数表示在对应的坐标(或坐标向量)处加点、 加线.plot(x$x1, x$x2); lines(lowess(x1, x2), lwd=3)3.3 绘图21这里我们在两者的散点图上添加了一非线性拟合曲线,调用了函数lowess().2. text()该函数的作用是在图上加标记.一般用法是text(x, y, labels=),即表示在对应的坐标(或坐标向量)(x, y)处添加标记,其中labels默认为label=1:length(x),我们实际中经常用到的是labels=“”,也就是在某处添加某个说明性的字符向量.text(3.0, 6.0

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 其它办公文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号