![[赞]R语言教程笔记-入门级2--知其然_第1页](http://file3.renrendoc.com/fileroot_temp3/2022-3/6/c4e30e61-78e5-46ce-aada-1867e915eefd/c4e30e61-78e5-46ce-aada-1867e915eefd1.gif)
![[赞]R语言教程笔记-入门级2--知其然_第2页](http://file3.renrendoc.com/fileroot_temp3/2022-3/6/c4e30e61-78e5-46ce-aada-1867e915eefd/c4e30e61-78e5-46ce-aada-1867e915eefd2.gif)
![[赞]R语言教程笔记-入门级2--知其然_第3页](http://file3.renrendoc.com/fileroot_temp3/2022-3/6/c4e30e61-78e5-46ce-aada-1867e915eefd/c4e30e61-78e5-46ce-aada-1867e915eefd3.gif)
![[赞]R语言教程笔记-入门级2--知其然_第4页](http://file3.renrendoc.com/fileroot_temp3/2022-3/6/c4e30e61-78e5-46ce-aada-1867e915eefd/c4e30e61-78e5-46ce-aada-1867e915eefd4.gif)
![[赞]R语言教程笔记-入门级2--知其然_第5页](http://file3.renrendoc.com/fileroot_temp3/2022-3/6/c4e30e61-78e5-46ce-aada-1867e915eefd/c4e30e61-78e5-46ce-aada-1867e915eefd5.gif)
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、R编程笔记2一、 简介1. 突出特点:【多领域的统计资源】目前在R网站上约有2400个程序包,涵盖了基础统计学、社会学、经济学、生态学、空间分析、系统发育分析、生物信息学等诸多方面。【免费】2. 缺点:【占用内存】所有的数据处理在内存中进行,不适于处理超大规模的数据。【运行速度稍慢】即时编译,约相当于C语言的1/20。3. CRAN :全称The Comprehensive R Archive Network。由世界几十个镜像网站组成网络,提供下载安装程序和相应软件包。各镜像更新频率一般为1-2天。推荐镜像: 中国的镜像:数学所:/mirrors/CRAN/
2、即时更新的CRAN源:/界面下如下(版本 R2.11.1)4. R程序包 (R packages)4.1 什么是R程序包R程序包是多个函数的集合,具有详细的说明和示例。每个程序包包含R函数、数据、帮助文件、描述文件等,window下是zip形式,安装时不要解压缩。R程序包是R功能扩展,特定的分析功能,需要用相应的程序包实现。例如:系统发育分析,常用到ape程序包,群落生态学vegan包等。4.2 常用R程序包ade4 利用欧几里得方法进行生态学数据分析adephylo系统进化数据挖掘与比较方法ape 系统发育与进化分析apTreeshape进化树
3、分析boot Bootstrap检验cluster聚类分析ecodist生态学数据相异性分析FD 功能多样性分析geiger物种形成速率与进化分析Graphics绘图lattice栅格图maptools空间对象的读取和处理mefa 生态学和生物地理学多元数据处理mgcv 广义加性模型相关mvpart多变量分解nlme 线性及非线性混合效应模型ouch 系统发育比较pgirmess生态学数据分析phangorn系统发育分析picante群落系统发育多样性分析raster栅格数据分析与处理seqinrDNA序列分析sp 空间数据处理spatstat空间点格局分析,模型拟合与检验splancs空间与
4、时空点格局分析stats R统计学包SDMTools物种分布模型工具vegan 植物与植物群落的排序,生物多样性计算CRAN Task Views 中有对程序包的分类介绍 4.3 R程序包安装1 用函数 install.packages(),如果已经连接到互联网,在括号中输入要安装的程序包名称,选择镜像后,程序将自动下载并安装程序包。例如: 要安装picante包,在控制台中输入 install.packages("picante")2 安装本地zip包路径:Packages>install packages from local files选择本地磁盘上存储zip包
5、的文件夹。4.4 程序包导入及使用程序包的中函数,都要先导入,再使用导入:library(vegan) 包中函数使用方法同R自带的函数使用方法一样。4.5 查看帮助文件1>查询程序包内容:1 菜单 帮助>Html帮助2 查看pdf帮助文档2>查询函数使用介绍:1 ?t.test 2 RGui>Help>Html help3 apropos("t.test") 4 help("t.test")5 help.search("t.test") 6 查看R包pdf手册3>解读帮助文件:lmstats #函数
6、名及所在包 Fitting Linear Models #标题Description #函数描述Usage #默认选项Arguments #参数Details #详情Author(s) #作者References #参考文献Examples #举例例:帮助>R函数帮助(文本)>弹出>点“确定”后弹出下面网页或录入 二、 函数与对象1. R函数1.1 函数形式 R是一种解释性语言,输入后可直接给出结果。功能靠函数实现。函数名(输入数据,参数= )例:平均值 mean(x, trim = 0, na.rm = FALSE, .) 线性模型 lm(yx, data=test)1.2
7、 函数种类低级 VS 高级(泛函) Help>Html help>packageslog() log10() exp() sin() cos() tan() asin() acos()binom.test()fisher.test()chisq.test()glm(y x1+x2+x3, binomial)friedman.test()常用统计函数如下:返回值返回序号举例:箱线图绘制函数的调用boxplot(daytype, data=bac, col="red", xlab="Virus", ylab="days")da
8、ytype, 以type为横轴,day为纵轴绘制箱线图。(type,day都是向量对象(后面会介绍)data=bac 数据来源bac (bac 为数据框对象)col=“red” 箱线图为红色xlab=“Virus” 横轴名称为Virusylab=“days” 纵轴名称为days2. 对象R处理的所有数据、变量、函数和结果都以对象的形式保存2.1 命名规则1. 区分大小写,注意China和china的不同。2. 不能用数字作为变量,对象也不能用数字开头,但是数字可以放在中间或结尾,如2result与result2,后者是合法的。3. 建议不要用过短的名称。可以用”.”作为间隔,例如 anova.
9、result1。4. 不要使用保留名:NA, NaN, pi, LETTERS, letters, month.abb, 2.2 元素类型(存储类型)对象是由各元素组成的。每个元素,都有自己的数据类型数值型 Numeric 如 100, 0, -4.335字符型 Character 如 “China”逻辑型 Logical 如TRUE, FALSE因子型 Factor 表示不同类别复数型 Complex 如:2 + 3i2.3 对象类型(结构化数据)向量(vector) 一系列元素的组合。如 c(1,2,3); c("a","a",&
10、quot;b","b","c")因子(factor) 因子是一个分类变量c("a","a","b","b","c")矩阵(matrix) 二维的数据表,是数组的一个特例x <- 1:12 ; dim(x) <- c(3,4) ,1 ,2 ,3 ,41, 1 4 7 102, 2 5 8 113, 3 6 9 12数组(array) 数组是k维的数据表(k in 1:n, n 为正整数)。向量(n = 1) 矩阵(n = 2) 高维数组
11、(n >= 3) 数据框(dataframe) 是由一个或几个向量和(或)因子构成,它们必须是等长的,但可以是不同的数据类型。列表(list) 列表可以包含任何类型的对象。 可以包含向量、矩阵、高维数组,也可以包含列表2.4 运算符数学运算 运算后给出数值结果+, -, *, /, (幂)比较运算 运算后给出判别结果(TRUE FALSE)>, <, <=, >=, =, !=逻辑运算 与、或、非!, &, &&, |, |2.5 数据表每个数据表可以看作一个数据框(dataframe),由很多不同类型的向量组成,如字符型,因子型,数值型,
12、每一列(column)作为一个向量(vector),每一行(row)作为一个记录(entry)。如何生成数据框?(1) 从外部数据读取test.data <- read.csv("D:/R/test2.csv",header=T) header=T 表示用第一行为列标题read.table(file=file.choose(),header=T) 可以弹出对话框,选择文件。数据量较大时用read.table函数从外部txt文件读取:data1<-read.table("d:/t.test.data.txt",header=T)(2) 各类型因
13、子组合成数据框见后2.6.3,数据框创建举例: 外部读入数据后进行方差分析bac<-read.table("d:/anova.data.txt",header=T) #将ba数据框中的type转换为因子(factor)=有分类的作用bac$type<-as.factor(bac$type) ba.an<-aov(lm(daytype, data=bac) summary(ba.an) boxplot(daytype,data=bac,col="red")2.6 对象的创建2.6.1 向量(1)生成向量的函数 c() , rep() ,
14、seq() , “:”c(2,5,6,9) #自定义的向量rep(2,times=4) # 重复型向量seq(from=3, to=21, by=3 ) #等距数值型向量 1 3 6 9 12 15 18 211:15 #连续型数值向量 1 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15通过与向量的组合,产生更为复杂的向量。rep(1:2,c(10,15) #数值1重复10次,数值2重复15次rep(1:5,1:5) #数值1至5按顺序分别重复1:5次注意:除了生成数值型向量,还可以生成字符型(abc),逻辑型(T,F)和复数型(a+bi)向量。(2)随机数向量 run
15、if(10, min = 0, max= 1) #均匀分布随机数rnorm(10, mean = 0, sd = 1)# 正太分布随机数几个随机数的相关函数概率密度 dunif(x, min=0, max=1, log = FALSE) 累积函数 punif(q, min=0, max=1, )分位数 qunif(p, min=0, max=1, ) 随机均匀分布 runif(n, min=0, max=1)2.6.2 矩阵dim() 和matrix() 为生成矩阵的函数,其中dim() 定义矩阵的行列数,举例:(1)x <- 1:12dim(x) <- c(3,4) ,1 ,2
16、,3 ,4 1, 1 4 7 10 2, 2 5 8 11 3, 3 6 9 12(2)matrix.x <- matrix(1:12,nrow=3,byrow=T)t(x) #转置 s() s #为行或列添加名称2.6.3 数据框cbind() # 按列组合成数据框rbind() # 按行组合成数据框data.frame() #生成数据框head() #默认访问数据的前6行例子:2.6.4 列表列表可以是不同类型甚至不同长度的向量(数值型,逻辑型,字符型等等)、数据框甚至列表的组合。list()例如:list(character,numeric,logi
17、cal,matrix.x)2.7 类的判断和转换2.7.1 判断 (is)对象类型判断mode() 判断存储的类型class() 判断数据的类根据数据的类,采用相应的处理方法。以下函数,主要用在函数处理异常时使用,目的是增强程序的稳健性。is.numeric() #返回值为TRUE或FALSEis.logical() #是否为逻辑值is.charactor() #是否为字符串is.null() #是否为空is.na() #是否为na2.7.2 转换(as)as.numeric() #转换为数值型as.logical() #转换为逻辑型as.charactor() #转换为字符串as.matri
18、x() #转换为矩阵as.data.frame() #转换为数据框as.factor() #转换为因子2.8 元素引用2.8.1 向量内其中 x2 - c(1,3,5)表示去除向量中第1,3,5个元素以一个向量作为元素引用的参数2.8.2 矩阵/数据框内矩阵和数据库都是二维的,元素引用方式类似分别对矩阵提取第一列元素、第二列元素、第2行第1列的元素 注意 数据框的不同列有列名称的 对整列的引用使用“$”可表示为intake <- data.frame(intake.pre, intake.post) #组合生成一个数据框intake$intake.pre #引用名为intake.pre的
19、列2.8.3 列表内列表内元素的引用可以用”如 list1c(1,2,3)2.9 数据框内部元素访问attach(datafram) #绑定当前区域为数据框datafram内,则无需使用$符号,即可直接引用框内的列名x=colum1 y=colum2z=colum3 .n=column. #在需要大量访问调用的情况下可用明显提高效率detach(datafram) #解除绑定 在函数内部,对数据进行相应调整 with() #with函数内部形成一个空间,在这个空间中,函数可以对列访问。within()transform() # 数据的转换,如取logsubset() #取数据的子集apply(
20、) #对数据表或矩阵应用某个函数,可减少循环2.10 条件筛选原理:条件筛选是先对变量否满足条件进行判断,满足为TRUE,不满足为FALSE。之后再用逻辑值对向量内的元素进行筛选。2.11 其他(1)工作空间 imageR的所有对象都在计算机内存的工作空间中。ls() 列出工作空间中的对象rm() 删除工作空间中的对象rm(list=ls() 删除空间中所有对象save.image(“weizhi”) 保存工作镜像load(“weizhi”) 提取sink() 将运行结果保存到指定文件中getwd() 显示当前工作文件夹/工作目录setwd() 设定工作文件夹/工作目录可将结果保存在image
21、中,形式为.Rdata文件,里面保存了R当前工作空间中的各种对象,包括函数。举例 设置工作目录、保存工作空间、查看工作目录/(2)历史数据 history输入的命令,在R中作为历史history保存,可输入函数history() # 查看输入历史history(Inf) # 查看打开R之后所有的输入可用向上或向下的箭头切换输入的行。三、 脚本编辑 scripting3.1定义:脚本语言(scripting language)又称动态语言,是依靠解释器完成相应的功能的一类计算机语言,通常以ASCII码的文本格式保存源程序3.2 特点脚本语言语法和结构通常比较简单,不需要编译,通过解释器对脚本进行
22、解释,从而给出结果,能用简单的代码完成复杂的功能,但是速度较慢。3.3比较很多计算机语言都有IDE (integrated development environment),即集成开发环境。但是R通常无需集成开发环境,脚本在一般的文本编辑器里即可编辑。在代码较多的情况下,常需要对行数、函数、括号、函数选项等进行高亮显示,设置成不同的颜色,以减少错误的发生。3.4 编辑器种类R自带的脚本编辑器 Editplus ( ) TinnR (/Tinn-R/ ) Ultraedit ( ) Emacs (/software/emacs/ ) Notepad+ 与NpptoR组合(http:/notepad- ) 记事本或写字板 等等3.5运行脚本1 通过source()函数运行source("d:/regression.r") =source(“文件位置”)2 通过R脚本编辑器运行路径:RGui>File>Open Script #Ctrl+R运行3 直接粘贴到R控制台ctrl+c, ctrl+v第三种最为简单直接务必要加后缀名啊!四、 绘图4.1功
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 三年级学生体能训练计划
- 六年级心理健康教育志愿服务计划
- 高端电子设备成品保护方案
- 人工智能与区块链技术结合的创新应用及市场潜力
- 区块链在供应链金融中的创新应用及前景分析
- 物联网技术在花店管理中的应用-全面剖析
- 利用区块链技术推动商业创新的IP激励与保护策略研究
- 从理论到实践-基于区块連技术的供应锭管理安全性分析与探讨
- 安全联邦学习框架-全面剖析
- 企业自然灾害应急救援演练计划
- 2024年全国职业院校技能大赛高职组(环境检测与监测赛项)考试题库(含答案)
- 2024年陕西安康职业技术学院招聘教师和辅导员30人(高频重点复习提升训练)共500题附带答案详解
- 6.3基层群众自治制度 说课课件高中政治统编版必修三政治与法治
- 新版高中物理必做实验目录及器材-(电子版)
- 绿色物流与可持续供应链
- 中国慢性冠脉综合征患者诊断及管理指南2024版解读
- 嗜酸性肉芽肿性血管炎新视野
- 中国法律史-第二次平时作业-国开-参考资料
- 人工智能智慧树知到期末考试答案章节答案2024年复旦大学
- 2023-2024全国初中物理竞赛试题-杠杆(解析版)
- QC/T 629-2021 汽车遮阳板-PDF解密
评论
0/150
提交评论