第五讲-数据描述性分析与绘图

上传人:洪易 文档编号:46135582 上传时间:2018-06-22 格式:PPT 页数:80 大小:1.71MB
返回 下载 相关 举报
第五讲-数据描述性分析与绘图_第1页
第1页 / 共80页
第五讲-数据描述性分析与绘图_第2页
第2页 / 共80页
第五讲-数据描述性分析与绘图_第3页
第3页 / 共80页
第五讲-数据描述性分析与绘图_第4页
第4页 / 共80页
第五讲-数据描述性分析与绘图_第5页
第5页 / 共80页
点击查看更多>>
资源描述

《第五讲-数据描述性分析与绘图》由会员分享,可在线阅读,更多相关《第五讲-数据描述性分析与绘图(80页珍藏版)》请在金锄头文库上搜索。

1、统计描述与绘图1、统计描述 2、绘图方法 3、实验练习授课内容授课目的学习如何应用R软件的统计描述与绘图 R的统计分析分为统计描述和统计推断两部分。 统计描述是通过绘制统计图形、编制统计表、计 算统计量等方法来表述数据的分布特征。 描述统计量包括了均值、中位数、次序统计量、 百分数、方差、标准差、变异系数、极差、偏度 系数等,是数据的位置度量、分散程度和分布形 状的体现。 还包括分布函数、直方图、经验分布图、QQ图 、茎叶图、箱线图等等。 均值(mean)的基本用法是 mean(x, trim=0, na.rm=FALSE); 其中x是要计算均值的那个量,trim是计算均值前,去掉 x两端观测

2、值的比例,na.rm如果是TRUE,则表示删除 NA再计算均值,允许缺失数据。 x x mean(x)1 6.5 若要分别求矩阵的行和列,则要用apply()函数 apply(x, 1, mean)1 5.5 6.5 7.5 apply(x, 2, mean)1 2 5 8 11 若x是个date frame, 则返回的是各列的平均值 mean(as.data.frame(x)V1 V2 V3 V42 5 8 11 因此多元数据的输入采用数据框的形式,会便于 后期数据的处理 w w.mean w.na mean(w.na); NA w.na.mean x sort(x, decreasing=

3、TRUE)1 75 66.9 64.0 63.5 62.2 62.2 58.7 47.4 若数据当中含有缺失值NA时,可以加na.rm来处理,注 意体会其用法 x.na sort(x.na); 1 47.4 58.7 62.2 62.2 63.5 64.0 66.9 75.0 sort(x.na, na.last=T)1 47.4 58.7 62.2 62.2 63.5 64.0 66.9 75.0 NA sort(x.na, na.last=F) 1 NA 47.4 58.7 62.2 62.2 63.5 64.0 66.9 75.0 x sort(x, index.return=T)$x1

4、 47.4 58.7 62.2 62.2 63.5 64.0 66.9 75.0$ix1 3 7 5 6 8 2 4 1 中位数函数median()的基本格式为 median(x, na.rm=FALSE) median(x.na)1 NAmedian(x.na, na.rm=F)1 62.85 百分数是中位数的推广,将数据按从小到大的顺序排 列后,取p分位数,若np是整数,则取第np和第np加 一个数的平均;若np不是整数,取第np+1那个数。 计算百分数要用到的函数是quantile(),基本格式为:quantile(x, probs=seq(0,1,0.25), na.rm=FALSE,

5、 names=TRUE, type=7, ) probs给出相应的百分位数,默认值是0,0.25,0.5, 0.75,1;na.rm是处理缺失数据的,na.rm=TRUE时, NA和NaN将从数据中移走,向量取值中若有NA或 NaN,要添加这一参数,否则会出错;names若为 TRUE,返回值当中有names这个属性“; type是取值1- 9的整数,选择了九种分位数算法(具体算法见帮助文 件)中的一种。 w.quantile attributes(w.quantile)$names 1 “0%“ “25%“ “50%“ “75%“ “100%“ quantile(w, probs=seq(0

6、,1, 0.2)0% 20% 40% 60% 80% 100%47.4 56.98 62.20 64.00 67.32 75.00 数据的分布 数据的分布主要考察分布函数(f), 密度函数 (d), 分位数函数(q)及产生随机数(r). 以正态分布为例: datadnorm(data, mean=0, sd=1, log=F);pnorm(data, mean=0, sd=1, lower.tail=T, log.p=F);pqnorm(p, mean=0, sd=1, lower.tail=T, log.p=F);1 1.959964 1.644854 # 0.05/2, 0.1/2分位数直

7、方图、经验分布图与QQ图 cl hist(Weight) 用density()函数可以绘制与直方图配套的核密度 估计。 density的一般用法为: density(x, bw=“nrd0“, adjust=1, kernel=c(“gaussian“, “), window=kernel, width ) bw是带宽,默认值R画出光滑图形;kernel是核 函数;adjust表示实际带宽是adjust*bw。其他参 数详见帮助文档。 w hist(w, freq=F); w.density lines(w.density, col=“blue“); xlines(x, dnorm(x, me

8、an(w), sd(w), col=“red“ ); 经验分布函数ecdf()可以估计总体的分布函数, 一般用法为:ecdf(x) 若要在R中画出经验分布函数,则用plot函 数: plot(ecdf(x), ylab=“Fn(x)“, verticals=FALSE, col.01line=“gray70“) verticals是逻辑变量,TRUE时表示画竖线,否则 不画竖线;col.01line是0-1线的颜色。 plot(ecdf(w), verticals=T, do.p=F); x lines(x, pnorm(x, mean(w), sd(w)不画点 QQ图是用来鉴别样本的分布是否

9、近似于某种类 型的分布 qqnorm()和qqline()提供了画正态QQ图和相 应直线的方法 qqnorm(y, ylim, xlab=“ “, ylab=“ “, plot.it=TRUE, datax=FALSE) plot.it是逻辑变量,TRUE时将结果画出来;datax 是将样本数据放x轴,默认值是FALSE。 qqplot(x, y, plot.it=TRUE); 比较x和y的分布接近程度 qqnorm(w);qqline(w) 茎叶图、箱线图及五数总括 茎叶图stem()可以细致地看出数据分布的结构。 stem()的一般用法为: stem(x, scale=1, width=8

10、0, atom=1e-08) scale控制了茎叶图的长度,默认值是1,如果 scale=2,则表示将0-9这10个个位数分成两段, 04为一段,59为一段;width是绘图的宽度; atom是容差,一般选择默认值即可。 x stem(x);The decimal point is 1 digit(s) to the right of the |2 | 53 | 4 | 55 | 0456 | 1487 | 255898 | 1344456679999 | 011210 | 0stem(x, scale=2)The decimal point is 1 digit(s) to the righ

11、t of the |2 | 53 | 3 | 4 | 4 | 55 | 045 | 56 | 146 | 87 | 27 | 55898 | 134448 | 56679999 | 01129 | 10 | 0 stem(x, scale=0.5); # scale也可以是小数,等于0.5时, 表示将0-9这10个个位数分成1/2段,即20个数为一段The decimal point is 1 digit(s) to the right of the |2 | 54 | 50456 | 148255898 | 134445667999011210 | 0 箱线图boxplot()直观地展现数据

12、分布的主要特征。 boxplot()有三种基本的用法: boxplot(x, ) boxplot(x, , range=1.5, width, varwidth, notch=FALSE, outline=TRUE, , horizontal=FALSE, add=FALSE, at=NULL) boxplot(formula, data, , subset, na.action=NULL); x是数据构成的数值型向量;range控制了“触须”的范围(默认值 1.5);notch=TRUE时,箱线图带有切口; outline是逻辑变量, TRUE时标出异常点;horizontal是逻辑变量,T

13、RUE表示把箱线图 绘制成水平状(默认值为FALSE); add是逻辑变量,TRUE时表示 在原图上画图,否则替换一张图(默认值为FALSE)。 若用最后一种形式,fomular是公式;data给出了公式作用的对象 ;subset是可选参数,可以给定要绘制的数据子集;na.action表示 对NA数据作出处理,默认值为NULL,即忽略NA数据。 A B boxplot(A, B, names=c(“A“, “B“), col=c(“red“, “blue“); boxplot(A, B, notch=T, outline=T, names=c(“A“, “B“), col=c(3,5); In

14、sectSprays; boxplot(countspray, data=InsectSprays, col=“lightgray“) boxplot(countspray, data=InsectSprays, notch=T, col=2:7, add=T)正态性检验与分布拟合 前面介绍的茎叶图、箱线图直观地现实了数据的分布 情况,直方图、经验分布图、QQ图配合了总体的分布 或者密度曲线,可以考察总体和正态分布的接近程度 。 然而,究竟所配的曲线是否合适,这种接近程 度如何给出统计分析,还需要做正态性检验。 这里将简单地介绍两种正态性检验方法:Shapiro-Wilk W检验和Kolmog

15、orov-Smirnov经验分布拟合检验。Shapiro-Wilk W检验 R中调用shapiro.test()函数即可使用该检验,使用格式为: shapiro.test(x) shapiro.test(runif(100, min=2, max=4);Shapiro-Wilk normality testdata: runif(100, min = 2, max = 4) W = 0.9269, p-value = 3.324e-05 # 拒绝原假设,非正态 shapiro.test(weight)Shapiro-Wilk normality testdata: weight W = 0.9686, p-value = 0.8371 # 接受原假设,是正态Kolmogorov-Smirov经验分布检验 R中可以条用ks.test()来执行Kolmogorov-Smirov检验 ks.test(x, y, alternative=c(“two.sided“, “less“, “greater“), exact=NULL); x是待检测的样本

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 研究报告 > 综合/其它

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