R语言基础培训第一讲-R语言入门.ppt_第1页
R语言基础培训第一讲-R语言入门.ppt_第2页
R语言基础培训第一讲-R语言入门.ppt_第3页
R语言基础培训第一讲-R语言入门.ppt_第4页
R语言基础培训第一讲-R语言入门.ppt_第5页
已阅读5页,还剩60页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

R语言入门,2,什么是R?,R是一种统计绘图语言,也指实现该语言的软件。,TheRProjectforStatisticalComputing,3,为什么要学会R?,SPSS(StatisticalPackagefortheSocialSciences)的发明者诺曼奈伊(NormanNie)说:“没有什么统计概念是R不能表现的。,5,R简史,R语言是从S统计绘图语言演变而来,可看作S的方言。S语言上世纪70年代诞生于贝尔实验室,由约翰钱伯斯(JohnChambers)开发。基于S语言开发的商业软件Splus,可以方便的编写函数、建立模型,具有良好的扩展性,在国外学术界应用很广,对SPSS和SAS有力冲击。1995年由新西兰Auckland大学统计系的罗斯艾卡(RossIhaka)和罗伯特简特曼(RobertGentleman),基于S语言的源代码,编写了一能执行S语言的软件,并将该软件的源代码全部公开,这就是R软件,其命令统称为R语言。,R的起源,RobertGentleman,RossIhaka,自1997年以后,有一个核心团队,这一团队能对R的源代码进行修改。,7,R的优点,多领域的统计资源目前在R网站上约有8230个程序包,涵盖了基础统计学、社会学、经济学、生态学、空间分析、系统发育分析、生物信息学等诸多方面。免费开源统计分析能力突出作图功能强大拓展与开发能力强,8,R的缺点,用户需要对命令熟悉与代码打交道,需要记住常用命令。帮助系统均为英文占用内存所有的数据处理在内存中进行,不适于处理超大规模的数据。运行速度稍慢即时编译,约相当于C语言的1/20。,如何学习R?,熟悉语法训练思维善于求助熟能生巧保持兴趣,NevertoolateandtoooldtolearnR,10,R软件首页/,11,Windows下载和安装R,下载完成后,双击R-3.2.4-win.exe开始安装。一直点击下一步,各选项默认,语言建议选英文。,12,图4R登陆界面(Windows版)路径:开始所有程序R3.2.4,菜单栏,快捷按钮,控制台,光标:等待输入,13,R图形界面:Rstudio,Rstudio是R的图形界面之一,可以让R语言代码更直观、明了地运行。RStudio同样是免费和开源的,可以在网站上自由下载与使用(,RStudio有以下几大优点:,代码字体高亮,代码完整性智能识别、自动缩进;可直接执行R程序代码;可运行多个R程序;可直接浏览工作表和数据;可随意缩放绘制的图形,并且有多种输出格式;整合R帮助和R使用文档;可查看R命令的运行记录。,15,17,R程序包(RPackages),程序包是什么?R程序包是多个函数的集合,具有详细的说明和示例。Window下的R程序包是经过编译的zip包。每个程序包包含R函数、数据、帮助文件、描述文件等。为什么要安装程序包?R程序包是R功能扩展,特定的分析功能,需要用相应的程序包实现。例如:系统发育分析,常用到ape程序包,群落生态学vegan包等。,18,install.views(Environmetrics),19,三种平台上的程序包,20,R程序包,在CRAN提供了每个包的源代码和编译好的程序包以vegan包为例,CRAN提供了:Packagesource:vegan_1.17-2.tar.gzMacOSXbinary:vegan_1.17-2.tgzWindowsbinary:vegan_1.17-2.zipReferencemanual:vegan.pdfWindow下程序包为zip文件,安装时不要解压缩。,21,安装程序包的方法,1菜单安装在联网的条件下,按菜单栏【程序包】下拉选择【安装程序包】,选择所需的程序包进行实时安装;2联网命令安装例如:要安装vegan包,在控制台中输入install.packages(vegan)3本地安装路径:Packagesinstallpackagesfromlocalfiles选择本地磁盘上存储zip包的文件夹。4脚本安装在联网的条件下,请运行Rpackages.install.R程序,即可完成本培训所需的程序包安装。,22,程序包使用与更新,程序包的中函数,都要先导入,再使用,因此导入程序包是第一步。在控制台中输入如下命令:library(lattice)library(ggplot2)所有程序包的更新update.packages()注意:R命令对大小写敏感,因此使用命令方式安装和载入程序包时应特别注意。,23,查看程序包帮助文件,vegan程序包内部都有哪些函数?分别有什么功能?查询程序包内容最常用的方法:1菜单帮助Html帮助2查看pdf帮助文档,24,查看函数的帮助文件,函数的默认值是什么?怎么使用?使用时需要注意什么问题?需要查询函数的帮助。1?t.test2RGuiHelpHtmlhelp3apropos(t.test)4help(t.test)5help.search(t.test)6查看R包pdf手册,25,26,帮助文件的内容,t.teststats#函数名及所在包FittingLinearModels#标题Description#函数描述Usage#默认选项Arguments#参数Details#详情Author(s)#作者References#参考文献Examples#举例,27,练习一安装R并导入程序包,1.安装R和Rstudio软件、熟悉菜单2.本地安装程序包:vegan3.调用程序包,查看程序包的帮助library(vegan)查找vegan包中cca函数的帮助输入?cca(试试?cca)将其中的Example粘贴到控制台中,查看运行的结果。,R数据集创建,数据创建向量,数组,矩阵,数据框,列表,因子数据输入scan(),csv文件,excel文件,sas数据数据存储write.table(),write.csv(),save(),向量vector,概念:用于存储数值型、字符型或逻辑型数据的一维数组。例子:a-c(1,2,5,3,6,-2,4)#数值型向量brep(2:5,rep(2,4)122334455rep(1:3,times=4,each=2)1112233112233112233112233paste(c(X,Y),1:10,sep=-)#不规则1X-1Y-2X-3Y-4X-5Y-6X-7Y-8X-9Y-10rep(factor(LETTERS1:3),5)1ABCABCABCABCABCLevels:ABC,向量中元素的访问,aa315#向量a中第一、三、五个数据ac(1,3,5)1156#向量a中第二到第六个数据a2:612536-2,#向量a中数值大于3的所有数据aa31564#去掉第一个值a-112536-24#去掉前三个值a-1:-3136-24,矩阵matrix,概念:一个二维数组#创建一个22的矩阵matrix(1:4,nrow=2,ncol=2),1,21,132,24#生成单位阵diag(3),1,2,31,1002,0103,001,mat1x2,#第二行的所有元素1246x,2#第2列的所有元素134x2,c(2,3)#第二行中第2、3列的元素146,数据框dataframe,使用函数data.frame()创建:mydatapatientIDagediabetesstatuspatientdatapatientdata1:2#第1、2列的所有元素patientdata$age#$符合用于选取一个指定的变量。,列表list,R数据类型中最为复杂的一种数据结构。列表就是包含任何类型的对象,可以是若干向量、矩阵、数据框,甚至其他列表的组合。通过函数list()来创建:mylistghjkmylistprovincepfpf1四川湖南江苏四川四川四川湖南江苏湖南江苏Levels:湖南江苏四川,数据的输入,1键盘输入mydata-data.frame(age=numeric(0),gender=character(0),weight=numeric(0)mydata-edit(mydata)#输入或修改mydata中的数据2使用scan()函数mydata-scan(file=ex.data,what=list(,0,0)#将压缩型数据读入一个向量或列表3导入csv文件mydata2-read.table(file=D:/dbh.csv,header=T,sep=,)mydata3-read.csv(file=D:/dbh.csv,header=T)4网络中读取表格或csv文件tbl-read.csv(,5导入Excel数据library(RODBC)channel-odbcConnectExcel(d:/test.xls)mydata-sqlFetch(channel,Sheet1)channel2-odbcConnectExcel2007(d:/test.xlsx)mydata2-sqlFetch(channel,Sheet1)6导入SAS数据library(foreign)mydata-read.sas(d:/test.ssd)library(Hmisc)datawrite.csv(df,file=D:/Rdata/fg.csv)(3)保存为R格式文件save(df,file=D:/Rdata/fg.Rdata),R数据操作,变量创建与删除变量重命名缺失值数据类型转化数据排序数据合并,数据子集提取数据重构常用函数数据探索常见循环自编函数,变量创建与删除,mydata-data.frame(x1=c(2,2,6,4),x2=c(3,4,2,8)#方法一mydata$sum-mydata$x1+mydata$x2mydata$mean-(mydata$x1+mydata$x2)/2#方法二mydata-transform(mydata,sum=x1+x2,mean=(x1+x2)/2)#变量删除mydata$mean-NULL,变量的重命名,df-mydata第一种方法:调用编辑器重命名fix(df)第二种方法:使用函数names()重命名names(df)names(df)1:3-c(A,B,C),缺失值的处理,缺失值:NA(NotAvailable,不可用)不可能出现的值:NaN(NotaNumber,非数值)函数is.na()可检测缺失值是否存在。例子x-c(1:3,5,7,NA,9)sum(x)#结果为NAsum(x,na.rm=T)#结果为27,数据类型的转换,数据转换例子,Rep-c(1:6)#Rep赋值is.numeric(Rep)#数值型判断:真is.factor(Rep)#因子判断:假Rep-as.factor(Rep)#转换为因子is.factor(Rep)#因子判断:真,数据的排序,R自带的order()函数plyr程序包的arrange()函数#按x1,x2先后依次排序#R自带的order()排序dforder(-df$x1,df$x2),#plyr程序包的arrange()函数排序library(plyr)arrange(df,-x1,x2),排序例子,#创建数据框df-data.frame(id=1:4,weight=c(20,27,24,22),size=c(small,large,medium,large)#idweightsize#120small#227large#324medium#422large,#R自带的order()函数dforder(df$weight),dforder(df$size,df$weight),dforder(df$size,-df$weight),#plyr包的arrange()函数library(plyr)arrange(df,weight)arrange(df,size,weight)arrange(df,size,-weight),排序例子(非同一数据框),有两列数据在一个数据框dataAB1小明2小王3小李4小张现输入一列数gg2143,要求显示出AB2小王1小明4小张3小李答案:dataorder(gg),数据集的合并,列合并#共有变量:IDtotal-merge(dataA,dataB,by=ID)#解释见代码#共有变量:ID、Countrytotal-merge(dataA,dataB,by=c(ID,Country)#含有一样的行数,而且以相同顺序排序。total-cbind(dataA,dataB),列合并例子,#创建数据框dataAdataA-read.table(header=T,text=storyidtitle1lions2tigers3bears),#创建数据框dataBdataB-read.table(header=T,text=subjectstoryidrating116.7124.5223.3215.2),#合并数据框dataA,dataBmerge(dataA,dataB,storyid)#将dataA的stroyid重命名为idcolnames(dataA)1-c(Id)merge(x=dataA,y=dataB,by.x=id,by.y=storyid),现在有某一地区的植物名录表格gao.csv,表格内只有两列,分别为中文名和name,现在有中国IUCN植物红色名录数据库表格chinaIUCN.csv(表格内只有两列,分别为濒危等级level和species)。我们需要通过匹配两个表格获得该地区植物的IUCN评估等级表。aa-read.csv(chinaIUCN.csv)sp-read.csv(gao.csv)bb-merge(aa,sp,by.x=species,by.y=name,all.y=T)head(bb)write.csv(bb,gaoIUCN.csv),列合并的案例分析,行合并,total-rbind(dataA,dataB)注意:dataA与dataB需含有一样的变量,但排列的顺序可以不同。,行合并例子,dfA-data.frame(Subject=c(1,1,2,2),Response=c(X,X,X,X)dfB-data.frame(Subject=c(1,2,3),Response=c(Z,Y,Z)df-rbind(dfA,dfB

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论