R语言经典入门_2012

上传人:d****y 文档编号:98028861 上传时间:2019-09-07 格式:DOCX 页数:135 大小:460.58KB
返回 下载 相关 举报
R语言经典入门_2012_第1页
第1页 / 共135页
R语言经典入门_2012_第2页
第2页 / 共135页
R语言经典入门_2012_第3页
第3页 / 共135页
R语言经典入门_2012_第4页
第4页 / 共135页
R语言经典入门_2012_第5页
第5页 / 共135页
点击查看更多>>
资源描述

《R语言经典入门_2012》由会员分享,可在线阅读,更多相关《R语言经典入门_2012(135页珍藏版)》请在金锄头文库上搜索。

1、R for BeginnersChinese Edition 2.0中文版说明“R for beginners”是一本公认的经典手册,非常适合R的初学者。英文原版初著于2002年,而此稿是基于作者在2005年重新修订的第二版。目录1 导言12 基本原理与概念32.1 基本原理32.2 对象的产生,排列及删除52.3 在线帮助73 R的数据操作93.1 对象93.2 在文件中读写数据113.3 存储数据143.4 生成数据153.4.1 规则序列153.4.2 随机序列183.5 使用对象193.5.1 创建对象193.5.2 对象的类型转换243.5.3 运算符263.5.4 访问一个对象的数

2、值:下标系统273.5.5 访问对象的名称303.5.6 数据编辑器323.5.7 数学运算和一些简单的函数323.5.8 矩阵计算344 R绘图374.1 管理绘图374.1.1 打开多个绘图设备374.1.2 图形的分割384.2 绘图函数414.3 低级绘图命令424.4 绘图参数444.5 一个实例454.6 grid 和lattice 包495 R的统计分析565.1 关于方差分析的一个简单例子565.2公式585.3泛型函数595.4包626 R编程实践656.1 循环和向量化656.2 用R写程序676.3 编写你自己的函数687 R 相关的文献721导言该手册是关于R的一个入门

3、教材.由于主要针对初学者,我将重点放在了 对R的工作原理的解释上。R涉及广泛,因此对于初学者来讲,了解和掌握一些基本概念及原理是很有必要的。在打下扎实的基础后,进行更深入的学习 将会变得轻松许多。本着深入浅出的宗旨,本手册将大量配合图表等形式, 尽可能使用通俗的语言,使读者容易理解而并不失细节。R是一个有着统计分析功能及强大作图功能的软件系统,是由Ross Ihaka 和Robert Gentleman1共同创立。R语言可以看作是由AT&T贝尔实验室所创的S语言发展出的一种方言1。因此,R即是一种软件也可以说是一种语言。S语言现在主要内含在由Insightful2公司经营的S-PLUS软件中。

4、R和S在设计理念上存在有着许多不同:关于这方面的详细内容大家可以参考Ihaka & Gentleman (1996) 或R-FAQ3,该文档同时随R一起发布。R是在GNU协议General Public Licence4下免费发行的,它的开发及维护现在则由R开发核心小组R Development Core Team具体负责。R的安装文件有多种形式, 有在Unix 或Linux系统下所需的一些源代码(主要用C及Fortran 编写),及在Windows, Linux及Macintosh上使用的预编译二进制码。这些安装文件以及安装说明都可以在Comprehensive R Archive Netw

5、ork (CRAN)5 网站上下载。该网站提供的关于Linux的安装文件只适用于较新版本的Linux。详情请参考CRAN网站。R内含了许多实用的统计分析及作图函数。作图函数能将产生的图片展 示在一个独立的窗口中,并能将之保存为各种形式的文件(jpg, png, bmp, ps, pdf, emf, pictex, xfig; 具体形式取决于操作系统)。统计分析的结果也能被直接显示出来,一些中间结果(如P-值,回归系数,残差等)既可保存到专门的 文件中,也可以直接用作进一步的分析。在R语言中,使用者可以使用循环语句来连续分析多个数据集,也可将多 个不同的统计函数结合在一个语句中执行更复杂的分析。

6、R使用者还可以借鉴 网上提供的用S编写的大量程序6,而且大多数都能被R直接调用。非专业人员起初可能觉得R相对比较复杂。其实,R的一个非常突出的优点正是它的灵活性。一般的软件往往会直接展示分析的结果,而R则将这些结 果都存在一个对象“object”里面,所以常常在分析执行结束后并不显示任何结1Ihaka R. & Gentleman R. 1996. R: a language for data analysis and graphics. Journal of Computational and Graphical Statistics 5: 299314.2 http:/ 4For more

7、 information: http:/www.gnu.org/ 5http:/cran.r-project.org/6For example: http:/stat.cmu.edu/S/73果。使用者可能会对此感到困惑,其实这样的特点是非常有用的,因为我们 可以选择的从结果中只抽出我们感兴趣的部分。例如,我们要运行20个回归 分析而只想比较其回归系数,在R中就可以选择只显示所有分析得出的回归系 数,这样结果仅仅占了一排,而用有些软件可能会一下打开20个窗口。而在 下面的章节中,我们会看到更多能展示R相比传统软件更为灵活优越的例子。2基本原理与概念如果R已经被安装在你的计算机中,它就能立即运行

8、一些可执行的命令 了。R默认的命令提示符是,它表示正在等待输入命令。如在Windows系 统中打开Rgui.exe,就能直接运行下拉菜单中的一些操作命令(如在线帮助, 打开文件. . . )。到这里,有些人可能会急着想知道更多的语句命令。其实,在学习这些内容前,了解掌握一些R的基本工作原理是非常有必要的。这正是本 章所要讲的主要内容。本章首先简要描述R的工作原理。在第二节中,我将介绍一些基本的赋 值分配(“assign”) 的操作,如怎样产生对象(object),如何操作管理这些对象等.最后简要介绍R中非常有用的在线帮助。2.1 基本原理因为R是一种编程语言,一些对编程不太熟悉的人可能会望而却

9、步。这种 障碍其实是完全没有必要,首先,R是一种解释型语言,而不是编译语言,也 就意味着输入的命令能够直接被执行,而不需要像一些语言要首先构成一个 完整的程序形式(如C,Fortan, Pascal, . . . )。第二,R的语法非常之简单和直观。例如,线性回归的命令lm(y x) 表示“以x为自变量,y为反应量来拟合一个线性模型”。合法的R函数总是带有 圆括号的形式,即使括号内没有内容(如,ls()。如果直接输入函数名而不输入圆括号,R则会自动显示该函数的一些具体内容。在本手册中除在部分文字 已作出清楚的说明外,所有的函数后都接有圆括号以区别于对象(object)。当R运行时,所有变量,数

10、据,函数及结果都以对象(objects)的形式存在计算机的活动内存中,并冠有相应的名字代号。我们可以通过用一些运算 符(如算术,逻辑,比较等)和一些函数(其本身也是对象)来对这些对象进行操作。运算操作非常简单,其细节将留在下章讨论(p. 26). 关于R中的函数可用下面的图例来形象的描述:default argumentsfunctionarguments options =result上图中的参量(argument)可能是一些对象(如数据,方程,算式. . . )。有些参量在函数里被预设为缺省值,用户则可按需对其作个别的修改。所以运 行一个R函数可能不需要设定任何参量,原因是所有的参量都可以

11、被默认为缺省值,当然也有可能该函数本身就不含任何参量。由于这里主要是讲述R的工 作原理,对R函数的介绍将不再展开,在后面的章节中我们会看到关于构建及 使用各种函数的详细内容(p. 68)。在R中进行的所有操作都是针对存储在活动内存中的对象的, 因此就不涉及到任何临时文件夹的使用(Fig. 1)。对数据,结果或图表的输入与输出都是通过在对计算机硬盘中的文件读写而实现。用户通过输入一些命令调用函 数,分析得出的结果可以被直接显示在屏幕上,也可以被存入某个对象或被 写入硬盘(如图片对象)。因为产生的结果本身就是一种对象,所以它们也能被 视为数据并能像一般数据那样被处理分析。数据文件即可从本地磁盘读取

12、也 可通过网络传输从远程服务器端获得。functions and operatorskeyboard commandsmouse- “data” objects-./library/base/stast/graphics/.library of functionsdata filesinternet-.- - screen“results” objects-. . .JPEGPSActive memoryHard disk图 1: R工作原理示意图.所有能使用的R函数都被包含在一个库(library) 中, 该库存放在磁盘的R HOME/library 目录下(R HOME 是最初安装R的地址

13、)。这个目录下含有具有各种功能的包(packages ),各个包也是按照目录的方式组织起来的。其中名为base的包可以算是R的核心,因为它内嵌了R语言中所有像数据读写 与操作这些最基本的函数。在上述目录中的每个包内,都有一个子目录R, 这个目录里又都含有一个与此包同名的文件(例如在包base中,有这样一个文 件R HOME/library/base/R/base)。该文件正是存放所有函数的地方。R语言中最简单的命令莫过于通过输入一个对象的名字来显示其内容了。 例如,一个名为n的对象,其内容是数值10: n 1 10方括号中的数字1表示从n的第一个元素开始显示。其实该命令的功能在这里于函数print 相似,输出结果与print(n) 相同(但有些情况下,例如内嵌在一个函数或循环中时,就必须得用print函数)。对象的名字必须是以一个字母开头(AZ 或az), 中间可以包含字母,数字(09),点(.)及下划线( ). 因为R对对象的名字区分大小写,所以x 和X就可以代表两个完全不同的对象(在Windows操作系统中也是如此)。2.2 对象的产生,排列及删除一个对象可以通过赋值操作来产生,R语言中的赋值(“assign”) 符号一般是由一个尖括号与一个负号组成的箭头形标志。该符号可以是从左到右的方 向,也可以相反: n n115 5-n n15 x X x11 X110如

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

当前位置:首页 > IT计算机/网络 > 数据库

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