浅谈R语言在统计学中的应用_叶文春

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
二项分布 b( n, p) , ( n= 20, p= 0.5) 在 hist 语 句 中 去 掉 probability=TRUE 则 画 出 的
只要知道了各种分布在 R 中的名称, 计算概率、 分位数、临界值等问题就会十分容易。这部分详细内 容 可 见 R 的 使 用 手 册 An introduction to R 下 的 probability distribution 部分。
> hist(x,main=' 二项分布 b(n, p), n=20,p=0.5', col='light blue',xlim=c(min(x),max(x)),probability= TRUE) # 画 x 的频率直方图 >lines(density(x,bw=1), col='red',lwd=3) # 计 算 模拟分布的密度, 并画出密度曲线
# 求 X=3 时的分布密度
也就是说, 要实现与某分布相关的操作, 则需要
在该分布名称前加上一定字母前缀, 在名称后面的
括号中加上该分布的参数等信息就可以了。在 R 中
大、小写是有区别的。
下表中给出常用分布在 R 中的名称及参数。
思想理论双月刊
>for(i in 1:N) {x[i]<- sum(sample(c(0, 1), n, replace= T)) } # 循环语句: 等概率抽样下, 将第 i 次实验中 1 出现的次数赋值给向量 x 的第 i 个分量。若为不等概 率抽样时, 需在 sample 语句中添加对 p 的定义。
是频数直方图。由此频率直方图及拟合的密度曲线 可以看到二项分布与正态分布很相似。事实上由中 心极限定理, 当 n 充分大时, 正态分布可作为二项分 布的近似分布。
对该分布更简单的模拟可用产生随机数的方法。 首先分别给 N, n 和 p 赋值为 1000、20、0.5, 然后用命令 “x<- rbinom(N,n,p)”产生二项分布随机数, 最后画出直 方图。画图语句同上。一般来说, 常见离散分布的简单 模拟都可用产生随机数并画直方图的方法。
关键词: R 语言 统计表 统计分布 检验 中图分类号: G8 文献标识码: A 文章编号: 1009—5381( 2008) 04—00123—03
一、R 语言简介 R 语言是为统计计算和图形展示而设计的一种 编程语言和统计环境。R 语言与著名的统计编程语 言 S 有着密切的关系。20 世纪 90 年代早期, Auck- land 大学统计系的 Robert Gentleman 和 Ross Ihaka 按照 S 语言的规范开始开发 R, 并将 R 作为一个自 由软件进行发布。1997 年 S 语言创始人之一 Cham- bers 也加入了这个团队, 从而大大促进了 R 语言的 发展。目前由 R 核心开发小组(R Development Core Team)对其进行维护和更新。 R 的优点: 首先 R 是一个完全免费的统计软件, 因此我们使用 R 完全不必担心侵犯版权之类的问 题; 其次, R 具有强大的数学统计分析和科学数据可 视化功能, 能提供各种数据处理、统计分析及图形显 示工具; 通过编制自己的函数可以扩展现有的 R 语 言的功能; 另外, 利用 R 语言内嵌的统计函数, 人们 很容易学习和掌握 R 语言的语法。 目前 R 语言在国外一些大学的统计教学和科研 中已得到了广泛应用。, 但是在我国多数人对 R 还比 较陌生, 关于 R 的公开出版物也还很有限。不过, 近 年来国内已有不少学者开始关注和学习 R, 并为推 广 R 而努力。 R 语言程序和使用手册等资料可以很方便地在 R 的 官 方 网 站 http://cran.r- project.org/上 自 由 下 载 。 目 前 的 最 新 版 为 2007 年 11 月 26 日 发 布 的 R - 2.6.1。另外在网上也能够搜寻到由 R 的爱好者翻译 的中译本使用手册。针对不同的操作系统, R 有不同 的版本, 下载时应注意选择。R 语言的界面非常朴 实, 菜单也很简单。安装并启动后, 你会发现它与 SPSS、Excel 等 常 用 的 统 计 软 件 不 同 , R 的 操 作 并 不
是菜单式的。用户必须在提示符“>”后输入命令, 然 后按回车键来运行。
使用 R 的帮助系统, 对于学习 R 非常重要。在 菜单栏中“帮助”命令下, 点击“手册( pdf 文件) ”, 可 看到 R 的使用手册; 点击“R 主页”或“CRAN 主页”, 则进入相应的 R 的官方网页。常用的帮助命令有“? 函数名称”或“help(函数名称)”, 这两者等价。例如: 输 入 ? plot 或 help(plot)后 , 按 回 车 键 则 显 示 画 图 命 令 plot 的具体用法。另外, 输入命令 help.start()可启动 R 的 Web 帮助; 而用 apropos( “名称”) 命令可以查找与 此名称相关的函数, 例如 apropos(“power”)可获得 带 “power”的所有函数。
时拒绝 H0; P≥a 时不拒绝 H0。本题中 p=0.04864, 故
在水平
下应拒绝原假设。
RBaidu Nhomakorabea在假设检验的同时也给出了相应的区间估
计。另外, 在 t- 检验的命令中, 参数 alternative 反映了
备择假设的情况, 其取值可以为 “two.side”、“less”和
以下本文通过几个具体的例子简单介绍 R 在统 计中的应用。
二、R 的统计表功能 在统计学习的过程中, 不可避免地要计算概率、 分位数、临界值等, 因此在大多数统计教科书的附录 部分或多、或少地给出了各种统计表以便查询。但是 由于篇幅所限, 一般只有一些最常用的统计表, 在遇 到实际问题时往往不能完全满足需要。使用 R 可以 轻松地解决这类计算问题。 例: 随机变量 X 服从正态分布, 计算概率、, 95% 的分位数及在 X=3 时的分布密度。 分析: 在学习统计学时下面几个名称是大家非 常熟悉的, 正态分布 normal distribution, 分布密度 density, 分位数 quantile, 概率 probability。在 R 中将 他们分别简记为 norm、d、q 和 p。根据已有的这些知 识, 不难理解以下几个 R 中的命令(注: >为提示符, # 后面为文字说明): >pnorm( 5, 4, 1.5) # 求正态分布中, 的概率
环保规定。假定废水中有毒物质含量
分析: 这是一个关于均值的检验问题。对此可以
提出如下假设:
因为总体的方差未知, 故用 t- 检验的方法。检验
统计量为:
可以看到输出结果中并没有直接给出拒绝域。
与其它常用统计软件一样, 需要通过 p 值的大小来
判断是否拒绝原假设。由 p 值与 a 的关系知: 当 p<a
中共贵州省委党校学报 2008.4( 总 116 期)
标准正态分布密度函数
标准正态分布累积分布函数 在 n=15, 拒绝域为: 0.436, 故
思想理论双月刊
时, 临界值, 根据样本计算得
125
, s=
例: 对正态分布的一个简单模拟
> n <- 1000
# 定义样本容量为 1000
> x <- rnorm(n) # 产生正态随机样本
作者简介:叶文春, 女, 华东师范大学统计系在职硕士、贵州民族学院讲师。
124
中共贵州省委党校学报 2008.4( 总 116 期)
>pnorm( 6, 4, 1.5) - pnorm( 5, 4, 1.5) # 求概率
>qnorm( 0.95, 4, 1.5) # 求 95%的分位数
>dnorm( 3, 4, 1.5)
中共贵州省委党校学报 2008.4( 总 116 期)
思想理论双月刊 123
浅谈 R 语言在统计学中的应用
●叶文春
( 华东师范大学 上海 200062)
摘 要: 统计方法在各行各业中发挥着越来越重要的作用, 学习和掌握一个统计分析软件十分有必要。R 语言作为一个优秀的免费统计软件已得到越来越多人的关注。本文从一些实例展示 R 语言在统计教学中的 应用, 并希望以此激发读者学习和使用 R 语言的兴趣。
3.6, 3.2, 3.0 ,2.7 ,3.5, 2.9)
> t.test(x,mu=3,alternative='greater')
回车后结果如下:
> lines(density(x),lwd=2) # 在图上添加 x 的拟
合密度曲线
>curve(dnorm(x), add=T, col='red', lty=2, lwd=3)
例如, 命令 qt(0.05, 10)表示求自由度等于 10 的 t 分布中 5%的分位数; pchisq (3, 2) 表示求自由度等 于 2 的卡方分布中的概率。依此类推。
另外在不同的分布名称前面加上小写字母 r 可 以产生不同分布下的随机数。
例: >rnorm(50, 0, 1)# 产生 50 个标准正态随机数 三、R 与概率分布 为直观理解统计分布性质和特征, 通常需要对 分布进行模拟并绘制统计图表等。利用 R 的随机抽 样命令和产生随机数的方法, 可以很方便的实现模 拟的操作;同时, 使用 R 强大的绘图功能可以画出你 所需的各种曲线。以下分别以二项分布和正态分布 为例, 介绍 R 在概率分布教学的应用。 1.二项分布 二项分布与 n 重贝努里试验有着密切的联系: 若 X 表示 n 重贝努里试验中试验成功的次数, 则 X 的分布称为二项分布 b(n, p)。当 n=1 时, 称 b(1,p)为 两点分布。 例: 对二项分布 b(n, p), n=20, p=0.5 的计算机模拟。 由二项分布与贝努里试验的关系可设计模拟如下: >N<- 1000 # 试验次数 N 为 1000 次 >n<- 20 # 定义二项分布 b(n, p)中 n=20 >x<- c(1: N) # 定义 x 为一个长度为 N 的向量, 用于保存试验结果
# 在图上添加标准正态分布曲线
四、R 与统计检验
在参数估计问题中, 常常要在抽样前先对未知
总体做出一些假定。假设检验研究的就是如何根据
抽样获得的样本来检验抽样前所做出的假设是否正
确。假设检验是统计学的一个重要组成部分。在 R 中
包含了许多常用参数及非参数检验方法。
下面是一个 t- 检验的例子。
例: 根据某地环境保护法规定, 倾入河流的废水
2.正态分布 现实生活中很多随机现象都可以用正态分布或 近似正态分布来描述, 并且统计中的三大抽样分布 都是由正态分布导的。可以说它是统计中最重要、最 常见的分布。 首先画出正态分布密度曲线: >curve(dnorm(x), xlim=c(- 3,3),col='blue', lwd=2) # 画一条自变量取值在- 3 与 3 之间的蓝色、线宽为 2 的曲线 >title (main=‘标准正态分布密度函数’) # 定义 图形的名称 curve 是绘制连续曲线的常用命令, 命令中的第 一个参数定义了用于作图的函数。根据前面的介绍 知 dnorm(x)表示标准正态分布密度函数。类似地, 要 画累积分布图, 只需对上面的命令稍加修改, 将函数 替换成 pnorm(x)即可。则: > curve(pnorm(x), xlim=c(- 3,3), col='red', lwd=3) > title(main=‘标准正态分布累积分布函数’)
> hist(x, probability=T, main=‘标准正态分布模
拟实验’) # 画出样本频率直方图
标准正态分布模拟实验
这表明样本落入拒绝域中, 因此在
水平下
认为该厂废水中有毒物质的含量超标。
在 R 中, 解决上面问题只需要下面两条命令:
> x<- c(3.1, 3.2 ,3.3, 2.9, 3.5 ,3.4, 2.5, 4.3 ,2.9 ,
中某种有毒化学物质的平均含量不得超过 3ppm。该
地区环保组织对沿河各厂进行检查, 测定每日倾入
河流的废水中该物质的含量。某厂连续 15 日的记录
为(单位: ppm):
3.1 3.2 3.3 2.9 3.5 2.4 2.5 2.3 2.9 2.6
3.2 3.0 2.7 3.5 2.9
试在显著性水平
下, 判断该厂是否符合
相关文档
最新文档