已阅读5页,还剩8页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
R语言入门及绘图实例 R语言入门及绘图实例罗奇斌概要1.R语言的介绍2.R语言的程序包3.数据管理4.R语言绘图1.1什么是R语言??R语言是主要用于统计分析、绘图的语言和操作环境。 1.1R语言的历史R是统计领域广泛使用的诞生于1980年左右的S语言的一个分支。 可以认为R是S语言的一种实现。 而S语言是由AT&T贝尔实验室开发的一种用来进行数据探索、统计分析和作图的解释型语言。 最初S语言的实现版本主要是S-PLUS。 后来Auckland大学的Robert Gentleman和Ross Ihaka及其他志愿人员开发了一个R系统。 S-PLUS的使用手册,只要稍加修改就可作为R的使用手册。 所以有人说R,是S-PLUS的一个“克隆”。 但是请不要忘了R是的(R isfree)。 1.2为什么选择R语言??丰富的资源涵盖了多种行业数据分析中几乎所有的方法。 ?良好的扩展性十分方便得编写函数和程序包,跨平台,可以胜任复杂的数据分析、绘制精美的图形。 ?完备的帮助系统每个函数都有统一格式的帮助,运行实例。 ?GNU软件、软件本身及程序包的源代码公开。 1.3R与其他统计软件比较?SAS:速度快,有大量统计分析模块,可扩展性稍差,昂贵。 ?SPSS:复杂的用户图形界面,简单易学,但编程十分困难。 ?Splus:运行S语言,具有复杂的界面,与R完全兼容,昂贵。 1.4R语言的缺点?用户需要对命令熟悉与代码打交道,需要记住常用命令。 ?占用内存所有的数据处理在内存中进行,不适于处理超大规模的数据。 ?运行速度稍慢即时编译,约相当于C语言的1/20。 ?相比点击鼠标进行操作,R仍能够大大提高效率。 1.5R语言的下载和安装?R软件首页.r-project/1.5R语言的下载和安装The ComprehensiveR ArchiveNetwork简称CRAN,由世界几十个镜像网站组成网络,提供下载安装程序和相应软件包。 各镜像更新频率一般为1-2天推荐镜像中国的镜像:数学所ftp.ctex/mirrors/CRAN/即时更新的CRAN源cran.r-project/1.5R语言的下载和安装?Windows下载和安装RCRAN:R Binarieswindowsbase下载完成后,双击R-3.0.1-win.exe开始安装。 一直点击下一步,各选项默认,语言建议选英文。 1.5R语言的下载和安装?Mac下载和安装RCRAN:R Binariesmacosx下载完成后,双击R-3.0.1.pkg开始安装。 一直点击下一步,各选项默认,语言建议选英文。 R登陆界面(Windows版)路径开始所有程序R3.0.0菜单栏快捷按钮控制台光标:等待输入RGui的File菜单RGui的Edit菜单RGui的Packages菜单RGui的Help菜单概要1.R语言的介绍2.R语言的程序包3.数据管理4.R语言绘图2R语言的程序包程序包是什么?R程序包是多个函数的集合,具有详细的说明和示例。 Window下的R程序包是经过编译的zip包。 每个程序包包含R函数、数据、帮助文件、描述文件等。 为什么要安装程序包?R程序包是R功能扩展,特定的分析功能,需要用相应的程序包实现。 例如系统发育分析,常用到ape程序包,群落生态学vegan包等。 2.1常用R程序包(I)ade4利用欧几里得方法进行生态学数据分析adephylo系统进化数据挖掘与比较方法ape系统发育与进化分析apTreeshape进化树分析bootBootstrap检验cluster聚类分析ecodist生态学数据相异性分析FD功能多样性分析geiger物种形成速率与进化分析2.1常用R程序包(II)Graphics绘图lattice栅格图maptools空间对象的读取和处理mefa生态学和生物地理学多元数据处理mgcv广义加性模型相关mvpart多变量分解nlme线性及非线性混合效应模型ouch系统发育比较pgirmess生态学数据分析phangorn系统发育分析2.1常用R程序包(III)picante群落系统发育多样性分析raster栅格数据分析与处理seqinrDNA序列分析sp空间数据处理spatstat空间点格局分析,模型拟合与检验splancs空间与时空点格局分析statsR统计学包SDMTools物种分布模型工具vegan植物与植物群落的排序,生物多样性计算2.2程序包的分类介绍vegan包页面三种平台上的程序包2.3程序包的安装在CRAN提供了每个包的源代码和编译好的程序包以vegan包为例,CRAN提供了Package source:vegan_2.0-7.tar.gz MacOSX binary:vegan_2.0-7.tgz Windowsbinary:vegan_2.0-7.zip Referencemanual:vegan.pdf Window下程序包为zip文件,安装时不要解压缩。 Mac下程序包为tgz文件,安装时不要解压缩。 2.3程序包的安装1用函数install.packages(),如果已经连接到互联网,在括号中输入要安装的程序包名称,选择镜像后,程序将自动下载并安装程序包。 例如要安装vegan包,在控制台中输入install.packages(vegan)2安装本地zip包路径Packagesinstall packagesfrom localfiles选择本地磁盘上存储zip包的文件夹。 2.4程序包的使用程序包的中函数,都要先导入,再使用,因此导入程序包是第一步。 在控制台中输入如下命令library(vegan)library(ape)程序包内的函数的用法与R内置的基本函数用法一样。 library(vegan)This isvegan2.0-72.5程序包的帮助文件vegan程序包内部都有哪些函数?分别有什么功能?查询程序包内容最常用的方法1菜单帮助Html帮助2查看pdf帮助文档练习一安装R并导入程序包概要1.R语言的介绍2.R语言的程序包3.数据管理4.R语言绘图3.数据管理3.1R的函数3.2R的对象3.3数据操作3.1R的函数R是一种解释性语言,输入后可直接给出结果。 功能靠函数实现。 函数形式:函数(输入数据,参数=)如果没有指定,则参数的以默认值为准。 例如:平均值mean(,x,trim=0,na.rm=FALS,E,.)线性模型lm(yx,data=test)3.1R的函数每一个函数执行特定的功能,后面紧跟括号,例如平均值mean)()求和sum)()绘图plot)()排序sort)()除了基本的运算之外,R的函数又分为”高级”和”低级”函数,高级函数可调用低级函数,这里的”高级”函数习惯上称为泛型函数。 如plot()就是泛型函数,可以根据数据的类型,调用底层的函数,应用相应的方法绘制相应的图形。 这就是面向对象编程的思想。 3.1.1R有哪些函数?查询的方法HelpHtml helppackageslog()log10()exp()sin()cos()tan()asin()acos()binom.test()fisher.test()chisq.test()glm(yx1+x2+x3,binomial)friedman.test()mean()sd()var().箱线图修饰前后(左默认值,右修改属性后)函数的调用方法,函数名()如plot(),lm(),并将对象放入括号中。 3.1.2R函数调用及其选项3.1.2R函数调用及其选项箱线图绘制函数的调用boxplot(daytype,data=bac,col=red,xlab=Vr irus,ylab=days)daytype,以type为横轴,day为纵轴绘制箱线图。 data=bac数据baol=“red”箱线图为红色xlab=“Virus”横轴名称为Virusylab=“days”纵轴名称为days3.2R的对象R处理的所有数据、变量、函数和结果都以对象的形式保存。 1.区分大小写,注意China和china的不同。 2.不能用数字作为变量,对象也不能用数字开头,但是数字可以放在中间或结尾,如2result与result2,后者是合法的。 3.建议不要用过短的名称。 可以用”.”作为间隔,例如anova.result1。 4.不要使用保留名NA,NaN,pi,LETTERS,letters,month.abb,3.2.1元素的类型对象是由各元素组成的。 每个元素,都有自己的数据类型数值型Numeric如100,0,-4.335字符型Character如“China”逻辑型Logical如TRU,E,FALSE因子型Factor表示不同类别复数型Complex如2+3i3.2.2对象的类(class)向量(vector)一系列元素的组合。 如c(1,2,3);c(a,a,b,b,c)因子(factor)因子是一个分类变量(c(a,a,b,b,c)矩阵(matrix)二维的数据表,是数组的一个特例x-1:12;dim(x)=3)数据框(dataframe)是由一个或几个向量和(或)因子构成,它们必须是等长的,但可以是不同的数据类型。 列表(list)列表可以包含任何类型的对象。 可以包含向量、矩阵、高维数组,也可以包含列表3.2.3运算符数学运算运算后给出数值结果,+,-,*,/,(幂)比较运算运算后给出判别结果(TRUE FALSE),=,=,!=逻辑运算与、或、非!,&,&,|,|3.2.4数据表的行与列低地33220251049样方5低地20260241238样方4山坡45390xx46样方3山坡30350261251样方2山顶25600221540样方1类型坡度海拔属数科数物种数行名Row names字符串每列可看做带名称的向量表1数据表、数据框与向量字符串、因子每行作为一个Entry列名Column names3.2.5数据框的组成?每个数据表可以看作一个数据框(dataframe)。 ?每一列(column)作为一个向量(vector)。 ?由很多不同类型的向量组成,如字符型,因子型,数值型。 ?每一行(row)作为一个记录(entry)?如何生成数据框??两种办法? (1)从外部数据读取? (2)各类型因子组合成数据框3.3数据操作3.3.1数据读取3.3.2数据创建3.3.3数据判断和转换3.3.4数据引用3.3.5数据筛选和排序3.3.1数据读取最为常用的数据读取方式是用read.table()函数或read.csv()函数读取外部txt或csv格式的文件。 txt文件,制表符间隔csv文件,逗号间隔一些R程序包(如foreign)也提供了直接读取Excel,SAS,dbf,Matlab,spss,systat,Minitab文件的函数。 3.3.2数据创建有时需要对读入的数据进行操作,将某一向量转换成矩阵,如条件筛选,此时将遇到向量、矩阵和数据框的生成、条件筛选等。 向量的创建四种类型的向量字符型character-c(China,Korea,Japan,UK,USA,France,India,Russia)数值型numeric-c(1,3,6,7,3,8,6,4)逻辑型logical-c(T,F,T,F,T,F,F,T)复数型略向量的创建生成向量的函数c(),rep(),seq(),”:”c(2,5,6,9)rep(2,times=4)seq(from=3,to=21,by=3)136912151821“:”1:151123456789101112131415通过与向量的组合,产生更为复杂的向量。 rep(1:2,c(10,15)矩阵的创建生成矩阵的函数dim()和matrix()dim()定义矩阵的行列数,例如x-1:12dim(x)-c(3,4),1,2,3,41,147102,258113,36912matrix.x-matrix(1:12,nrow=3,byrow=T)t(x)#转置为行或列添加名称s()s()数据框的创建创建数据框的函数:data.frame(),as.data.frame(),cbind(),rbind()cbind()#按列组合成数据框rbind()#按行组合成数据框data.frame()#生成数据框head()#默认访问数据的前6行列表的创建列表可以是不同类型甚至不同长度的向量(数值型,逻辑型,字符型等等)、数据框甚至是列表的组合。 list()例如list(character,numeric,logical,matrix.x)3.3.3数据判断和转换对象类型判断mode()判断存储的类型class()判断数据的类根据数据的类,采用相应的处理方法。 以下函数,主要用在函数处理异常时使用,目的是增强程序的稳健性。 is.numeric()#返回值为TRUE或FALSEis.logical()#是否为逻辑值is.charactor()#是否为字符串is.null()#是否为空is.na()#是否为na3.3.3数据判断和转换as.numeric()#转换为数值型as.logical()#转换为逻辑型as.charactor()#转换为字符串as.matrix()#转换为矩阵as.data.frame()#转换为数据框as.factor()#转换为因子3.3.4数据引用例子intake.pre-c(5260,5470,5640,6180,6390,6515,6805,7515,7515,8230,8770)intake.pre5;#引用第5个元素intake.prec(3,5,7)#引用第3,5,7个元素v-c(3,5,7);intake.prev;intake.pre1:5;#引用第1到5个元素intake.pre-c(3,5,7)#去除第3,5,7元素3.3.4数据引用intake70001FALSE FALSE FALSE FALSE FALSE FALSE FALSE TRUE TRUETRUETRUEintake.preintake.pre7000intake.pre7000&intake.pre7000&intake.pre=80003.3.5数据筛选和排序将向量中的元素按照一定顺序排列。 sort)()按数值大小排序举例intake$intake.pre sort(intake$intake.pre)order)()默认给出从小到大的出现序号。 order(intake$post)o-intakeorder(intake$intake.pre),练习二数据的基本操作概要1.R语言的介绍2.R语言的程序包3.数据管理4.R语言绘图4.R语言绘图4.R语言绘图R具备卓越的绘图功能,通过参数设置对图形进行精确控制。 绘制的图形能满足出版印刷的要求,可以输出jpg、tiff、eps、emf、pdf、png等各种格式。 通过与GhostScript软件的结合,可以生成600dpi,1200dpi的等各种分辨率和尺寸的图形。 绘图是通过绘图函数结合相应的选项完成的。 绘图函数包括高级绘图函数和低级绘图函数。 4.1高级绘图函数plot()绘制散点图等多种图形,根据数据的类,调用相应的函数绘图hist()频率直方图boxplot()箱线图stripchart()点图barplot()柱状图dotplot()点图piechart()饼图matplot()数学图形散点图与箱线图4.2低级绘图函数lines()添加线curve()添加曲线abline()添加给定斜率的线points()添加点segments()折线arrows()箭头axis()坐标轴box()外框title()标题text()文字mtext()图边文字4.3绘图参数参数用在函数内部,在没有设定值时使用默认值。 font=字体t lty=线类型lwd=线宽度pch=点的类型,xlab=
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 幼儿园微型消防站管理制度
- 工厂车间安全培训考试题带答案(完整版)
- 病理学高级职称题试题及答案
- 2025年山东省(专升本)化学真题试卷及答案
- 2026年甘肃省嘉峪关社区工作者考试试卷及答案
- 黑龙江大庆市高职单招英语试题含答案
- 2026年度执业药师西医真题和答案
- 马术场地障碍调试技师(中级)考试试卷及答案
- 老年智能血糖仪研发工程师岗位招聘考试试卷及答案
- 译林版英语三年级下册Unit 8 第3课时 Wrap-up time分层作业(有答案)
- 2026广东潮州市饶平县信访局招聘后勤服务人员1人笔试备考题库及答案解析
- 2026年中国铁路公司招聘考试铁路专业知识真题库及答案
- 发热待查诊治专家共识(2026 版)
- 家具制造工艺流程与标准操作规程
- 2026北京西城初二上学期期末数学试卷和答案
- 马年猜猜乐(马的成语)打印版
- 2026年及未来5年市场数据中国磷化铟行业市场调研分析及投资战略咨询报告
- 北京市东城区2024-2025学年高一上学期期末统一检测地理试卷
- 2025年郑州铁路职业技术学院单招职业技能考试题库含答案
- 物业人员管理及培训方案
- 2.1地形导学案-八年级地理上学期人教版
评论
0/150
提交评论