R语言基本操作课件_第1页
R语言基本操作课件_第2页
R语言基本操作课件_第3页
R语言基本操作课件_第4页
R语言基本操作课件_第5页
已阅读5页,还剩71页未读 继续免费阅读

下载本文档

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

文档简介

第一章R语言操作张春雨1ppt课件第一章R语言操作张春雨1ppt课件R的数据操作1.所有对象都有两个内在属性:类型和长度类型是对象元素的基本种类,共有四种:数值型、字符型、复数型和逻辑型长度是对象中元素的数目2.对象类型和长度可用函数mode和length获得例:x<-1;mode(x);length(x)A<-"Gomphotherium";compar<-TRUE;z<-1imode(A);mode(compar);mode(z)2ppt课件R的数据操作1.所有对象都有两个内在属性:类型和长度2pp例:data1=read.table(file.choose(),header=T)#读exampledatadata2=read.table(header=TRUE,text="ab1234")读取数据:.txt文件3ppt课件例:data1=read.table(file.choose存储数据:.txt文件函数write.table可以在文件中写入一个对象,一般是写一个数据框,也可以是其它类型的对象(向量,矩阵...)write.table(x,file="",append=FALSE,quote=TRUE,sep="",eol="\n",na="NA",dec=".",s=TRUE,s=TRUE,qmethod=c("escape","double"))例:

write.table(data1,file=“mydata")4ppt课件存储数据:.txt文件函数write.table可以在文格式:

read.csv(file,header=TRUE,sep=",",quote="\"",dec=".",fill=TRUE,comment.char="",...)例:1.将excel文件转存为csv格式文件2.data1=read.csv(file.choose(),header=T)#读exampledata.csv3.data2=write.csv(??,file="")#读exampledata.csv读取和存储数据:.csv文件5ppt课件格式:读取和存储数据:.csv文件5ppt课件生成数据#生成1到30的规则整数序列:x<-1:30#函数seq生成实数序列:seq(1,5,0.5)#第一个数字为起点,第二个为终点,第三个为步长seq(length=9,from=1,to=5)#等价于seq(length=9,1,5)#函数c直接输入数值:c(1,1.5,2,2.5,3,3.5,4,4.5,5)#函数rep用来创建一个所有元素都相同的向量:rep(1,30)6ppt课件生成数据#生成1到30的规则整数序列:6ppt课件随机序列生成函数例:rnorm(100,0,1)#显著性水平为5%的正态分布的双侧临界值:qnorm(0.025)qnorm(0.975)该类统计函数具有相似形式,只需用d、p或者q替代r,如密度函数dfunc(x,...),累计概率密度函数(即分布函数)pfunc(x,...),分位数函数qfunc(p,...)7ppt课件随机序列生成函数例:rnorm(100,0,1)该类统计函数创建和使用对象向量:函数vector有两个参数:类型(mode)和长度(length)。数值型向量则元素值都为0,逻辑型都为FALSE,字符型都为""。例:a=0;b=FALSE;c=""a=numeric();b=logical();c=character()8ppt课件创建和使用对象向量:函数vector有两个参数:类型(mo因子:一个因子不仅包括分类变量本身还包括变量不同的可能水平factor(x,levels=sort(unique(x),na.last=TRUE),labels=levels,exclude=NA,ordered=is.ordered(x))其中:levels用来指定因子可能的水平(缺省值是向量x中互异的值);labels用来指定水平的名字;exclude表示从向量x中剔除的水平值;ordered是一个逻辑型选项用来指定因子的水平是否有次序例:factor(1:3,levels=1:5)factor(1:3,labels=c("A","B","C"))9ppt课件因子:一个因子不仅包括分类变量本身还包括变量不同的可能水平9矩阵:一个矩阵实际上是有一个附加属性(维数dim)的向量,维数为一个长度为2的向量,用来指定矩阵的行数和列数。matrix(data=NA,nrow=1,ncol=1,byrow=FALSE,dimnames=NULL)其中:选项byrow表示数据给出的值是要按列填充(缺省值)还是按行填充(如果为TRUE)。可以通过选项dimnames给行列命名。例:matrix(data=5,nr=2,nc=2)matrix(1:6,2,3,byrow=TRUE)#byrow=F10ppt课件矩阵:一个矩阵实际上是有一个附加属性(维数dim)的向量,维数据框(Dataframe):数据框可以由函数read.table间接创建;也可以用函数data.frame创建。数据框中向量必须有相同的长度,若其中有一个比其它短,它将“循环”整数次填充。例:x<-1:4;n<-10;M<-c(10,35)data.frame(x,n);data.frame(x,M)11ppt课件数据框(Dataframe):数据框可以由函数r列表(List):列表可以用list函数创建,方法与创建数据框类似。它对其中包含的对象类型没有限制。例:x<-1:4;y<-2:4L1<-list(x,y);L2<-list(A=x,B=y)L1;L212ppt课件列表(List):列表可以用list函数创建,方法与创建数据下标访问象的数值:下标系统1.下标系统可以用来有效、灵活且有选择性地访问一个对象中的元素;下标可以是数值型或逻辑型例:x<-1:5;x[3];x[3]<-202.下标本身也可以是一个数值型向量:例:i<-c(1,3);x[i]3.如果x是一个矩阵或者数据框,第i行第j列的值可以通过x[i,j]来访问例:x<-matrix(1:6,2,3);x[,3]<-21:22;x[,3]#返回向量;x[,3,drop=FALSE]]#返回矩阵4.通过负数下标剔除一个或一些行或列例:x[,-1];

x[,-c(1,2)]13ppt课件下标访问象的数值:下标系统1.下标系统可以用来有效、灵活且有5.对于向量、矩阵和数组,可以用一个条件表达式作为下标访问元素值:

例:x<-1:10;x[x>=5]<-20;x[x==1]<-256.使用逻辑型下标的应用:例:选择可以被2整除的元素x<-rpois(40,lambda=5);x[x%%2==0]循环逻辑值下标:x<-1:40;s<-c(FALSE,TRUE);x[s]下标访问象的数值:下标系统14ppt课件5.对于向量、矩阵和数组,可以用一个条件表达式作为下标访问访问对象的名称1.names是一个对象元素的字符型标签,通常情况是可选属性,名称有多个种类(names,colnames,rownames,dimnames)例:x<-1:3;names(x);names(x)<-c("a","b","c");names(x);names(x)<-NULL2.对于矩阵和数据框,colnames和rownames分别是列和行的标签。例:X<-matrix(1:4,2);rownames(X)<-c("a","b");colnames(X)<-c(“c","d");X3.对于矩阵和数据框,colnames和rownames分别为列和行的标签例:X<-matrix(1:4,2);rownames(X)<-c("a","b");colnames(X)<-c("c","d");X;dimnames(X)#dimnames返回包含两个名称向量的列表15ppt课件访问对象的名称1.names是一个对象元素的字符型标签,通3种有用的数据编辑器1.使用一个类似于电子表格的图形编辑器去编辑一个“数据”对象例:x<-matrix(1:4,2)data.entry(x)fix(x)edit(x)16ppt课件3种有用的数据编辑器1.使用一个类似于电子表格的图形编辑器去数学运算1.函数c:用来连接列在圆括号中的对象例:c(1:5,seq(10,11,0.2))2.向量可进行常规算术运算例:x<-1:4;y<-rep(1,4);z<-x+y;z3.不同长度向量可相加,最短向量将循环使用例:x<-1:4;y<-1:2;z<-x+y;z4.对于一个向量中所有的元素加(或乘)相同的数值例:

x<-1:4;a<-10;z<-a*x;z17ppt课件数学运算1.函数c:用来连接列在圆括号中的对象17ppt课常用运算函数18ppt课件常用运算函数18ppt课件常用运算函数19ppt课件常用运算函数19ppt课件常用运算函数20ppt课件常用运算函数20ppt课件矩阵计算合并向量或矩阵例:m1<-matrix(1,nr=2,nc=2);m2<-matrix(2,nr=2,nc=2);rbind(m1,m2);cbind(m1,m2)2.矩阵乘积的运算例:rbind(m1,m2)%*%cbind(m1,m2)3.矩阵的转置例:n1<-matrix(1:4,nr=2,nc=2);t(n1)4.提取或修正一个矩阵的对角元例:diag(n1);diag(n1)<-10;v<-c(10,20,30);diag(v)5.矩阵求逆:solve(n1)6.矩阵分解:qr(n1)7.特征值和特征向量:eigen(n1)8.奇异值分解svd(n1)21ppt课件矩阵计算合并向量或矩阵21ppt课件R绘图绘图函数:高级绘图函数创建一个新图形,低级绘图函数在现存图形上添加元素。绘图参数控制绘图选项,可以使用缺省值或者用函数par修改例:x=1:10;y=rep(10,10);plot(x,y)#高级绘图函数abline(h=10)#低级绘图函数abline(h=10,col=“red”,lty=2,lwd=3)#打开一个新绘图窗口:windows()22ppt课件R绘图绘图函数:高级绘图函数创建一个新图形,低级绘图函数在现高级绘图函数23ppt课件高级绘图函数23ppt课件高级绘图函数24ppt课件高级绘图函数24ppt课件高级绘图函数25ppt课件高级绘图函数25ppt课件部分绘图函数具有的共性选项及其缺省值add=FALSE如果是TRUE,叠加图形到前一个图上(如果有的话)axes=TRUE如果是FALSE,不绘制轴与边框type="p"指定图形的类型,"p":点,"l":线,"b":点连线,"o":同上,但是线在点上,"h":垂直线,"s":阶梯式,垂直线顶端显示数据,"S":同上,但是在垂直线底端显示数据xlim=,ylim=指定轴的上下限,例如xlim=c(1,10)或者xlim=range(x)xlab=,ylab=坐标轴的标签,必须是字符型值main=主标题,必须是字符型值sub=副标题(用小字体)26ppt课件部分绘图函数具有的共性选项及其缺省值add=FALSE如果低级绘图命令side=1图正上方,side=2图左边,side=3图下方,side=4图右边用length=?来指定箭头的大小27ppt课件低级绘图命令side=1图正上方,side=2图左边,s低级绘图命令28ppt课件低级绘图命令28ppt课件绘图参数29ppt课件绘图参数29ppt课件绘图参数30ppt课件绘图参数30ppt课件绘图参数在plot方法所生成图上画圆。例:x=rnorm(10)y=rnorm(10)plot(x,y)#指定在原点生成大小为4,背景色为黄色的圆points(0,0,pch=21,cex=4,bg="yellow")#指定生成大小为4的“*”points(1,-1,pch="*",cex=4)31ppt课件绘图参数在plot方法所生成图上画圆。例:31ppt课件R的统计分析几乎所有函数都采用一样的符号。公式典型形式是y~model,其中y为响应变量,model为一些元素项的集合而且要为其中一些项估计参数。这些元素项通过一些有特殊涵义的运算符连接。32ppt课件R的统计分析几乎所有函数都采用一样的符号。公式典型形式是y~R函数运算连接符a+b

a和b的相加效应X如果X是一个矩阵,这将反映各列的相加效应,即[,1]+X[,2]+...+X[,ncol(X)];还可通过索引向量选择特定列进行分析(如,X[,2:4])a:b

a和b的交互效应a*b相加和交互效应(等价于a+b+a:b)poly(a,n)a的n价多项式^n包含所有的直到n阶的交互作用,即(a+b+c)^2等价于a+b+c+a:b+a:c+b:cb%in%ab和a的嵌套分类设计(等价于a+a:b,或者a/b)-b去掉因子b的影响,如:(a+b+c)^2-a:b等价于a+b+c+a:c+b:c-1y~x-1表示通过原点的线性回归(等价于y~x+0或者0+y~x)1y~1拟合一个没有因子影响的模型(仅仅是截距)offset(...)向模型中增加一个影响因子但不估计任何参数(如,offset(3*x))33ppt课件R函数运算连接符a+ba和b泛型函数R统计函数常常返回一个类名与函数名相同的对象(如,aov返回类“aov”的对象,lm返回类“lm”的对象)。我们用来解析结果的函数对特定的类对象有特定的行为。这些函数被称为泛型。34ppt课件泛型函数R统计函数常常返回一个类名与函数名相同的34ppt课泛函数的典型使用方式为:y=rnorm(100);x=rpois(100,2)mod<-lm(y~x);df.residual(mod)泛型函数35ppt课件泛函数的典型使用方式为:泛型函数35ppt课件R循环语句for(iin1:length(x)){y[i]<-0...}if(x[i]==b){y[i]<-0...}36ppt课件R循环语句for(iin1:length(x)){3while(myfun>minimum){...}R循环语句37ppt课件while(myfun>minimum){R循环语句下课了,休息吧!!38ppt课件下课了,休息吧!!38ppt课件第一章R语言操作张春雨39ppt课件第一章R语言操作张春雨1ppt课件R的数据操作1.所有对象都有两个内在属性:类型和长度类型是对象元素的基本种类,共有四种:数值型、字符型、复数型和逻辑型长度是对象中元素的数目2.对象类型和长度可用函数mode和length获得例:x<-1;mode(x);length(x)A<-"Gomphotherium";compar<-TRUE;z<-1imode(A);mode(compar);mode(z)40ppt课件R的数据操作1.所有对象都有两个内在属性:类型和长度2pp例:data1=read.table(file.choose(),header=T)#读exampledatadata2=read.table(header=TRUE,text="ab1234")读取数据:.txt文件41ppt课件例:data1=read.table(file.choose存储数据:.txt文件函数write.table可以在文件中写入一个对象,一般是写一个数据框,也可以是其它类型的对象(向量,矩阵...)write.table(x,file="",append=FALSE,quote=TRUE,sep="",eol="\n",na="NA",dec=".",s=TRUE,s=TRUE,qmethod=c("escape","double"))例:

write.table(data1,file=“mydata")42ppt课件存储数据:.txt文件函数write.table可以在文格式:

read.csv(file,header=TRUE,sep=",",quote="\"",dec=".",fill=TRUE,comment.char="",...)例:1.将excel文件转存为csv格式文件2.data1=read.csv(file.choose(),header=T)#读exampledata.csv3.data2=write.csv(??,file="")#读exampledata.csv读取和存储数据:.csv文件43ppt课件格式:读取和存储数据:.csv文件5ppt课件生成数据#生成1到30的规则整数序列:x<-1:30#函数seq生成实数序列:seq(1,5,0.5)#第一个数字为起点,第二个为终点,第三个为步长seq(length=9,from=1,to=5)#等价于seq(length=9,1,5)#函数c直接输入数值:c(1,1.5,2,2.5,3,3.5,4,4.5,5)#函数rep用来创建一个所有元素都相同的向量:rep(1,30)44ppt课件生成数据#生成1到30的规则整数序列:6ppt课件随机序列生成函数例:rnorm(100,0,1)#显著性水平为5%的正态分布的双侧临界值:qnorm(0.025)qnorm(0.975)该类统计函数具有相似形式,只需用d、p或者q替代r,如密度函数dfunc(x,...),累计概率密度函数(即分布函数)pfunc(x,...),分位数函数qfunc(p,...)45ppt课件随机序列生成函数例:rnorm(100,0,1)该类统计函数创建和使用对象向量:函数vector有两个参数:类型(mode)和长度(length)。数值型向量则元素值都为0,逻辑型都为FALSE,字符型都为""。例:a=0;b=FALSE;c=""a=numeric();b=logical();c=character()46ppt课件创建和使用对象向量:函数vector有两个参数:类型(mo因子:一个因子不仅包括分类变量本身还包括变量不同的可能水平factor(x,levels=sort(unique(x),na.last=TRUE),labels=levels,exclude=NA,ordered=is.ordered(x))其中:levels用来指定因子可能的水平(缺省值是向量x中互异的值);labels用来指定水平的名字;exclude表示从向量x中剔除的水平值;ordered是一个逻辑型选项用来指定因子的水平是否有次序例:factor(1:3,levels=1:5)factor(1:3,labels=c("A","B","C"))47ppt课件因子:一个因子不仅包括分类变量本身还包括变量不同的可能水平9矩阵:一个矩阵实际上是有一个附加属性(维数dim)的向量,维数为一个长度为2的向量,用来指定矩阵的行数和列数。matrix(data=NA,nrow=1,ncol=1,byrow=FALSE,dimnames=NULL)其中:选项byrow表示数据给出的值是要按列填充(缺省值)还是按行填充(如果为TRUE)。可以通过选项dimnames给行列命名。例:matrix(data=5,nr=2,nc=2)matrix(1:6,2,3,byrow=TRUE)#byrow=F48ppt课件矩阵:一个矩阵实际上是有一个附加属性(维数dim)的向量,维数据框(Dataframe):数据框可以由函数read.table间接创建;也可以用函数data.frame创建。数据框中向量必须有相同的长度,若其中有一个比其它短,它将“循环”整数次填充。例:x<-1:4;n<-10;M<-c(10,35)data.frame(x,n);data.frame(x,M)49ppt课件数据框(Dataframe):数据框可以由函数r列表(List):列表可以用list函数创建,方法与创建数据框类似。它对其中包含的对象类型没有限制。例:x<-1:4;y<-2:4L1<-list(x,y);L2<-list(A=x,B=y)L1;L250ppt课件列表(List):列表可以用list函数创建,方法与创建数据下标访问象的数值:下标系统1.下标系统可以用来有效、灵活且有选择性地访问一个对象中的元素;下标可以是数值型或逻辑型例:x<-1:5;x[3];x[3]<-202.下标本身也可以是一个数值型向量:例:i<-c(1,3);x[i]3.如果x是一个矩阵或者数据框,第i行第j列的值可以通过x[i,j]来访问例:x<-matrix(1:6,2,3);x[,3]<-21:22;x[,3]#返回向量;x[,3,drop=FALSE]]#返回矩阵4.通过负数下标剔除一个或一些行或列例:x[,-1];

x[,-c(1,2)]51ppt课件下标访问象的数值:下标系统1.下标系统可以用来有效、灵活且有5.对于向量、矩阵和数组,可以用一个条件表达式作为下标访问元素值:

例:x<-1:10;x[x>=5]<-20;x[x==1]<-256.使用逻辑型下标的应用:例:选择可以被2整除的元素x<-rpois(40,lambda=5);x[x%%2==0]循环逻辑值下标:x<-1:40;s<-c(FALSE,TRUE);x[s]下标访问象的数值:下标系统52ppt课件5.对于向量、矩阵和数组,可以用一个条件表达式作为下标访问访问对象的名称1.names是一个对象元素的字符型标签,通常情况是可选属性,名称有多个种类(names,colnames,rownames,dimnames)例:x<-1:3;names(x);names(x)<-c("a","b","c");names(x);names(x)<-NULL2.对于矩阵和数据框,colnames和rownames分别是列和行的标签。例:X<-matrix(1:4,2);rownames(X)<-c("a","b");colnames(X)<-c(“c","d");X3.对于矩阵和数据框,colnames和rownames分别为列和行的标签例:X<-matrix(1:4,2);rownames(X)<-c("a","b");colnames(X)<-c("c","d");X;dimnames(X)#dimnames返回包含两个名称向量的列表53ppt课件访问对象的名称1.names是一个对象元素的字符型标签,通3种有用的数据编辑器1.使用一个类似于电子表格的图形编辑器去编辑一个“数据”对象例:x<-matrix(1:4,2)data.entry(x)fix(x)edit(x)54ppt课件3种有用的数据编辑器1.使用一个类似于电子表格的图形编辑器去数学运算1.函数c:用来连接列在圆括号中的对象例:c(1:5,seq(10,11,0.2))2.向量可进行常规算术运算例:x<-1:4;y<-rep(1,4);z<-x+y;z3.不同长度向量可相加,最短向量将循环使用例:x<-1:4;y<-1:2;z<-x+y;z4.对于一个向量中所有的元素加(或乘)相同的数值例:

x<-1:4;a<-10;z<-a*x;z55ppt课件数学运算1.函数c:用来连接列在圆括号中的对象17ppt课常用运算函数56ppt课件常用运算函数18ppt课件常用运算函数57ppt课件常用运算函数19ppt课件常用运算函数58ppt课件常用运算函数20ppt课件矩阵计算合并向量或矩阵例:m1<-matrix(1,nr=2,nc=2);m2<-matrix(2,nr=2,nc=2);rbind(m1,m2);cbind(m1,m2)2.矩阵乘积的运算例:rbind(m1,m2)%*%cbind(m1,m2)3.矩阵的转置例:n1<-matrix(1:4,nr=2,nc=2);t(n1)4.提取或修正一个矩阵的对角元例:diag(n1);diag(n1)<-10;v<-c(10,20,30);diag(v)5.矩阵求逆:solve(n1)6.矩阵分解:qr(n1)7.特征值和特征向量:eigen(n1)8.奇异值分解svd(n1)59ppt课件矩阵计算合并向量或矩阵21ppt课件R绘图绘图函数:高级绘图函数创建一个新图形,低级绘图函数在现存图形上添加元素。绘图参数控制绘图选项,可以使用缺省值或者用函数par修改例:x=1:10;y=rep(10,10);plot(x,y)#高级绘图函数abline(h=10)#低级绘图函数abline(h=10,col=“red”,lty=2,lwd=3)#打开一个新绘图窗口:windows()60ppt课件R绘图绘图函数:高级绘图函数创建一个新图形,低级绘图函数在现高级绘图函数61ppt课件高级绘图函数23ppt课件高级绘图函数62ppt课件高级绘图函数24ppt课件高级绘图函数63ppt课件高级绘图函数25ppt课件部分绘图函数具有的共性选项及其缺省值add=FALSE如果是TRUE,叠加图形到前一个图上(如果有的话)axes=TRUE如果是FALSE,不绘制轴与边框type="p"指定图形的类型,"p":点,"l":线,"b":点连线,"o":同上,但是线在点上,"h":垂直线,"s":阶梯式,垂直线顶端显示数据,"S":同上,但是在垂直线底端显示数据xlim=,ylim=指定轴的上下限,例如xlim=c(1,10)或者xlim=range(x)xlab=,ylab=坐标轴的标签,必须是字符型值main=主标题,必须是字符型值sub=副标题(用小字体)64ppt课件部分绘图函数具有的共性选项及其缺省值add=FALSE如果低级绘图命令side=1图正上方,side=2图左边,side=3图下方,side=4图右边用length=?来指定箭头的大小65ppt课件低级绘图命令side=1图正上方,side=2图左边,s低级绘图命令66ppt课件低级绘图命令28ppt课件绘图参数67ppt课件绘图参数29ppt课件绘图参数68ppt课件绘图参数30ppt课件绘图参数在plot方

温馨提示

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

评论

0/150

提交评论