




已阅读5页,还剩157页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
.,统计模拟与,主讲:朱强理学院,QQ群:6052759E-Mail:qiang_zhu,SimulationandR,.,课程要求,1.本课程上机实习3-4次2.每次上机需要完成一次实验并提交3.本课程怎么考试?4.总评=考勤+实验作业+考试成绩,.,主要内容,1.R软件介绍2.R统计分析3.统计模拟介绍,.,教材和主要参考书籍,1、肖枝洪、朱强著,统计模拟及其R实现,武汉大学出版社,2010,2、Sheldon.M.Ross,Simulation,(3nd),Elsevier,2002,3、王兆军,陈广雷,邹长亮译,统计模拟(第4版),人民邮电出版社,2007.,4、薛毅,陈立萍,统计建模与R软件,清华大学出版社,2006.,.,第一篇:R介绍,R是一个开放(GPL)的统计编程环境一种语言,是语言(由ATsexf1MFMMFLevels:FM函数factor()用来把一个向量编码为一个因子,一般形式为factor(x,levels=sort(unique(x),na.last=TRUE),labels,exclude=NA,ordered=FALSE)is.factor()检验对象是否是因子,as.factor()把向量转化为因子。levels()可以得到因子的水平sex.level=levels(sexf);sex.level1”F”“M”对因子向量可用table()统计各类数据的频数。sex.tab=table(sexf);sex.tab,.,2.tapply()函数例子:知道5位学生的性别,还知道这5位学生的身高,分组求身高的平均值height=c(174,165,180,171,160)tapply(height,sex,mean)1FM162.5175.0tapply()的一般形式为tapply(x,INDEX,FUN=NULL,simplify=TRUE)x是一对象,通常为一向量,INDEX是与X有同样长度的因子,FUN是要计算的函数3.gl()函数gl()可以方便地产生因子,gl(n,k,length=n*k,labels=1:n,odered=FALSE)n为水平数,k为重复的次数,length为结果的长度,labels为n维向量,表示因子水平,ordered是逻辑变量,表示是否为有序因子,缺省值FALSEgl(2,3)gl(2,1,6),.,六、列表(list)和数据框(data.frame)1、列表的构造red=list(name=“黎明”,age=30,scores=c(85,76,90)rec$name1黎明$age130$scores1857690,.,列表元素可用”列表名下标”引用rec2130rec32但列表不同于向量,每次只能引用一个元素,如rec1:2是不允许的,对连续型变量产生因子,或分类agerec“age”rec$age2、列表的修改rec$name=“张三”rec$age=list(20,32,58)可重新添加一些到列表中rec$sex=“男”rec6=161第5号元素没定义,所以值是”NULL”,若rec是一个向量,则空元素为”NA”列表之间还可以连接起来,List.ABC=c(list.A,list.B,list.C),.,3.数据框数据框通常是矩阵形式的数据,但矩阵各列可以是不同类型。数据框每列是一个变量,每行是一个观测。(1)生成数据框一般可以把数据框看作一种推广了的矩阵,它可用矩阵形式表示,数据框可以用data.frame()函数生成,用法与list()函数相同ls()#列出工作空间你定义的所有变量str(x)#给出对象x的一些信息,.,d=data.frame(name=c(李明,张聪,王建),age=c(30,35,28),height=c(180,162,175)dnameageheight1李明301802张聪351623王建28175可以将列表转化为一个数据框:如比较他们之间的区别d1=list(name=c(李明,张聪,王建),age=c(30,35,28),height=c(180,162,175)as.data.frame(d1),.,(2)数据框的引用引用数据框元素的方法与引用矩阵元素的方法相同。d1:2,2:3数据框的各变量也可用按列表引用(用双括号或$引用)d“age”1303528d$height1180162175数据框的各行也可以定义名字,用rownames属性定义。names(d)1nameageheightrownames(d)=c(one,two,three)rownames(d)1onetwothree,.,(3)attach()函数数据框的主要用途是保存统计建模的数据。调用数据框的变量像以前d是不方便的,R提供了函数attach()可以把变量调入内存。attach(d)r=age/height#此时age,height是可以利用的但r的值不会进入数据框d,若想把刚才r当作新的数据框的变量d$r=age/weightdnameageheightrone李明301800.1666667two张聪351620.2160494three王建281750.1600000detach(d)取消连接,.,(4)列表与数据框的编辑可用函数edit()对列表或者数据框进行编辑newd=edit(d)当然也可对向量,数组,矩阵类型的数据进行修改和编辑.Fix用函数merge(x,y,.)对两个数据框合并成一个可查看帮助.?merge,.,七、输入输出1.输入(1)read.table()等相关函数read.table()函数是读表格形式的文件,若”班级”数据已输入到一个纯文本文件”cjb.txt”中,假设存储在c:/cjb.txt,其格式如下:,.,学号姓名平时其中期末总评07*001吴蒙蒙8566646907*002高旭9580949107*003李楠9278556707*004赵利冲7848404007*005何耀龙8958516007*006何星8544817407*007唐佳征9573536507*008程西平9686899007*009陈茂琴9584697707*010程长久9479828407*011王锋9374868507*012何福顺9082536607*013罗玲9693909207*014刘卿卿9767948907*015张晓芳93728282072301016杨乐遥88615060072301017沈亮95415460072301018高晶98769189072301020郭慧93918387072301021陈灿92766975072301022李婷90766975072301023陈元俊94745969072301024谭海梅95646370072301025张亚琴95898588072301026胡阳98929897072301027张冲92606569072301028位会敏95928287072301029胡红96789089072301030岳鑫璐96607979072301031李欢欢988510097072301032陈龙龙92656470072301033朱盼88556668,.,读入格式为:cjb=read.table(c:/cjb.txt,header=TRUE)cjbis.data.frame(cjb)1TRUEheader=TRUE表示第一行读入的是变量名,默认是header=FALSE,即自动会添上列名.具体用法可见帮助.?read.tabled=read.csv(txt.csv)#读逗号分隔的文本文件d=read.csv2(“txt.csv”)#读分号分隔的文本文件,逗号代替小数点d=read.delim(foo.txt)#读制表符分隔的文件d=read.delim2(“foo.txt”)#读制表符分隔的文件,逗号代替小数点d=read.fwf(txt.fwf)#读固定宽的文件,.,D=readLines(“a.txt”)#每行有不同的结构readLines(con=stdin(),n=-1L,ok=TRUE,warn=TRUE,encoding=unknown)cat(TITLEextraline,2357,111317,file=ex.data,sep=n)readLines(ex.data,n=-1)unlink(“ex.data”)#删除文件,.,R中一般不能直接读xls文件,可先转换为csv(2)scan()函数scan()函数可直接读纯文本文件数据和直接从屏幕上输数据x=scan()1:244.255:Read4timesx1244.25假设有10名学生的体重数据已输入文件”weight.txt”,格式为4563.532.567.277.55554496270w=scan(c:/weight.txt),.,假设weight.txt中,奇数是女性体重,偶数是男性体重,即数据中有不同的属性wfm=scan(c:/weight.txt,list(F=0,M=0)Read5records将数据读入,并以列表的方式赋给变量wfmwfm$F145.032.577.554.062.0$M163.567.255.049.070.0其它数据格式的读入可以参见帮助文档中的R数据输入输出.,.,2.输出直接输入变量名即可输出x=1:5x112345用print(x)与上式是等价的,里面有些参数,digits指定每个数输出的有效数字位.options(digits=3)1/310.333write.table#输出数据框到文件write.csvwrite.csv2Write.matrix#输出矩阵到文件,需要加载包MASS,.,cat()函数也可用来输出,但它可以把多个参数连接起来再输出(类似于paste()的功能)cat(i=,i,n)#注意为什么要用”n”cat(c(AB,C),c(E,F),n,sep=)ABCEFcat()还可以指定一个参数”file=文件名”,把结果写到指定的文件中cat(i=,1,n,file=c:/result.txt)若指定的文件存在,则原内容被覆盖,但加上append=TRUE可以不覆盖原文件而是在末尾附加.,.,八程序控制结构,1.分支结构,if(条件)表达式,或if(条件)表达式1else表达式2例如:if(any(xn=4;x=matrix(0,nrow=4,ncol=4)for(iin1:n)for(jin1:n)xi,j=1/(i+j-1),.,x,1,2,3,41,1.00000000.50000000.33333330.25000002,0.50000000.33333330.25000000.20000003,0.33333330.25000000.20000000.16666674,0.25000000.20000000.16666670.1428571,.,(2)while循环,while(condtion)expr当条件condtion成立,则执行表达式expr.例如编写一个计算100以内的Fibonacci数f=1;f2=1;i=1while(fi+fi+1f1112358132134558914413233377610987,.,(3)repeat循环,repeatexprrepeat循环依赖break语句跳出循环.例如用repeat循环编写一个计算100以内的Fibonacci数f=1;f2=1;i=1repeatfi+2=fi+fi+1i=i+1if(fi+fi+1=1000)breakf1112358132134558914413233377610987,.,三个例子myfn1-function(obs=10,n=100)x-rep(NA,100)for(iin1:n)tmp-runif(obs)xi-mean(tmp)list(mn=mean(x),std=sd(x)Myfn1(),.,myfn2-function(obs=10)x-runif(obs)while(mean(x)0.45)obs-2*obsxf(3.5)例子使用gamma函数求n!factorial=function(n)+if(n=0)gamma(n+1)+elseprint(“Pleaseinputapositiveinteger!)+factorial(6)factorial(-6)Choose(10,5)#求组合值,.,fzero=function(f,a,b,eps=1e-5)if(f(a)*f(b)0)list(fail=“findingrootisfail!”)elserepeatif(abs(b-a)fzero(f,1,2)$root11.324718$fun1-1.405875e-05,.,R软件提供了求一元方程的根的函数uniroot()uniroot(f,interval,lower=min(interval),upper=max(interval),tol=.Machie$double.eps0.25,maxiter=1000,.)uniroot(f,c(1,2)$root11.324718$f.root1-5.634261e-07$iter17$estim.prec16.103516e-05,.,用于处理错误的函数用于处理用户输入不正确的类型而可能出现的错误warning()若错误不严重以至影响整个计算stop()若错误可能导致计算中止print()显示必要的信息formatC()数值作为字符串输出cat()字符串联,可以插入n(换行)及t(tab键)paste()字符粘贴(非字符型自动转换)例子:cat(R,is,agood,software.n)formatC(1/3,format=f,digits=4)formatC(1/3,format=e,digits=4)paste(1:12)#与as.character(1:12)等价paste(A,1:6,sep=)paste(todayis,date(),.,例.考虑某银行的存取系统.设open.account()为存开户函数,deposit()为存款函数,withdraw()为取款函数,balance()为存取款平衡(余额)函数.对于客户的存取过程如下:,.,open.account=function(total)list(deposit=function(amount)if(amount=0)stop(Depositsmustbepositive!n)totaltotal)stop(Youdonthavethatmuchmoney!n)totala=c(-4,1,0,3)polyroot(a)11.0-0.000000i-0.5+1.040833i-0.5-1.040833i,.,十、R在计算中的应用2、求一元线性(非线性)方程的根设一元函数为y=f(x)求方程f(x)=0在区间a,b内的所有实根。例:求方程在区间(0,1)内的所有根。两种方法:(1)先画出函数y=f(x)图像观察它的根的大致范围f=function(x)(1-x)4-4*x*(1-x)3+4*x3*(1-x)-x4x=seq(0,1,by=0.01);y=f(x)plot(x,y,type=l);abline(h=0,col=red),.,得到图像如下看出在(0,1)间有三个根,分别位于(0.2,0.4),(0.4,0.6),(0.6,0.8)利用函数uniroot求出其根uniroot(f,c(0.2,0.4)uniroot(f,c(0.4,0.6)uniroot(f,c(0.6,0.8)得到三个根分别为0.211,0.5,0.789(2)或者直接利用包rootSolve中的函数uniroot.all()求出(0,1)内的所有根library(rootSolve)uniroot.all(f,c(0,1)10.50000000.21132530.7886747,.,十、R在计算中的应用3、求n元非线性方程组的根例:求下列方程组的根model=function(x)c(F1=x12+x22-1,F2=x22-2*x1)#定义方程组library(rootSolve)multiroot(model,c(1,1)#要先给初始值,.,$root10.41421360.9101797$f.rootF1F26.43565e-106.39019e-10$iter15$estim.precis16.41292e-10,.,十一、图形R软件有很强的图形功能,可用简单的函数调用,迅速作出数据的各种图形。比如:有一个班级的数据存贮在c:/work/class01.txtc1=read.table(c:/work/class01.txt)colnames(c1)=c(Name,Sex,Age,Weight,Height)attach(c1)#建立连接,方便引用变量plot(Height)画出身高的散点图plot(Sex)画出性别的频数条形图,.,常用的绘图函数plot().也可作两个变量x与y的散点图plot(Height,Weight,main=体重对身高的回归,xlab=身高,ylab=体重)plot(-50):50/25,(-50):50/25)3,type=l)表示画连线图stem(Height)画茎叶图boxplot(Weight)#绘制盒形图,可看出数据的大体分布,中间粗体线是中位数,其它的有最小值,最大值,1/4分位数,3/4分位数,.,hist(Weight)#绘制直方图fit1=lm(WeightHeight)#求体重对身高的回归p1=predict(fit1,c1)对数据c1进行预测boxplot(list(体重=Weight,预报=p1)画出盒形图函数qqnorm(),qqline()提供了绘画正态QQ图和相应的直线的方法qqnorm(Weight)qqnorm函数的用法qqnorm(y,ylim,main=NormalQ-QPlot,xlab=,Ylab=,plot.it=TRUE)qqline(Weight),.,Plot通常在一个窗口出现,根据需要自动打开.有时需要同时打开两个图形窗口,可用dev.new()我们能够在窗口上保存图像,或者用如下命令保存postscript(myfile.ps)#保存其他图形格#式的命令有jpeg(),bmp(),png(),tiff()plot(1:10)dev.off(),.,I.高水平绘图函数1.plot()(1)plot(x,y)#x,y为向量,生成y关于x的散点图(2)plot(x)#x为时间序列(3)plot(f)#f为因子,生成f的直方图plot(f,y)#f为因子,y为向量,生成y关于f水平的盒形图,.,(4)plot(df)#df为数据框plot(expr)#expr为对象名称的表达式(如:a+b+c)plot(yexpr)#y为任意一个对象例如:attach(c1)plot(c1)#三项指标构成的散点图plot(Age+Height)#身高与年龄的散点图plot(WeightAge+Height)#绘出两张散点图,一张是体重与年龄的,一张是体重与身高(5)coplot()函数coplot(WeightHeight|Age)#绘出按年龄段给出体重与身高的散点图,.,2.高水平绘图中的命令(1)图中的逻辑命令add=TRUE表示在所绘图在原图上加图,缺省为add=FALSE即新图替换旧图axes=FALSE表示所绘图没有坐标轴,默认axes=TRUE(2)Type命令type=“p”#绘制散点图(缺省值)type=“l”#绘制实线,.,type=“b”#画点和线type=“o”#实线通过所有的点type=“h”#绘出点到x轴的竖线type=“s”or“S”#绘出阶梯形曲线type=“n”#不绘任何点和曲线(3)图中的字符串axes=FALSE#不画坐标,默认xlab=字符串,其字符串的内容是x轴的说明,ylab=字符串意义与前面相同,默认是变量名main=字符串,字符串内容是图的说明,出现在图的正上方.sub=字符串,副标题,出现在x轴的正下方,默认为空xlim=c(lo,hi),ylim=c(lo,hi)#坐标轴的范围,.,II.低水平作图函数1.加点和线的函数points()#在已有图形上加点,参数pch为画出指定的字符,可查看帮助.points(x,y)与plot(x,y)作用一样lines()#在已有图上加直线,lines(x,y)与plot(x,y,type=“l”)类似,线的类型由参数lty=n决定,在help(par)中查看lty,.,2.在点处加标记函数text()是在图上加标记,格式为text(x,y,labels,)#x,y是数据形向量.labels可以是整数,也可是字符串,缺省是labels=1:length(x)如:plot(Weight,Height,type=n)text(Weight,Height)legend(x,y,legend,)#在制定位置给出一个盒子对图形进行解释,legend是标签字符串向量其他参数lty=,lwd=,col=,fill=,angle=,density,pchlocator(n,type)#在鼠标点击的地方做标记,type为做标记的类型(点或线),右键选终止identify(x,y,labels)#在制定的点x,y处做标记,默认为1:length(x).见demo4.2,.,3.在图上加直线(1)abline(a,b)#表示画直线y=a+bx(2)abline(h=y)#表示画出一条过所有点的水平直线(3)abline(v=x)#表示画出一条过所有点的竖线(4)abline(lm.obj)#表示画出线型模型得到的线型方程(5)polygon(x,y,)#以数据(x,y)为坐标,依次连接所有的点,绘出多边形,此时与plot(x,y,type=l)功能相似,.,4.在图上加标记,说明或其它内容(1)title(main=“MainTitle”,sub=“subtitle”)加上图的题目和子图的题目,主题目加在顶部,子题目加在底部(2)axis(side,)side是边,side=1表示所加内容放在图的底部,side=2表示所加内容放在图的左侧,side=3表示所加内容放在图的顶部side=4表示所加内容放在图的右侧,.,5.其他类型的图barplot()#画出一个条形图,可用一个向量指定条形的高度.boxplot()#产生一个箱型图pie()#画饼图pairs()#产生散点图的网格contour(),persp(),image(),画2维图见demo4.3在制定的地方可用数学标识xlab=expression(hat(beta)2)见demo4.4,.,6.一页多图,R可以在同一页面开若干个按行、列排列的窗格,在每个窗格中可以作一幅图。每个图有自己的边空,而所有图的外面可以包一个“外边空”。一页多图用mfrow参数或mfcol参数规定,如:,.,par(mfrow=c(3,2)表示同一页有三行两列共六个图,而且次序为按行填放。类似地,par(mfcol=c(3,2)规定相同的窗格结构,但是次序为按列填放,即先填满第一列的三个再填第二列。要取消一页多图只要再运行par(mfrow=c(1,1)即可。缺省时无外边空。为了规定外边空大小,可以用omi参数或oma参数。omi参数使用英寸为单位,oma参数以文本行高为单位,两个参数均为四个元素的向量,分别给出下、左、上、右方的边空大小。如:par(oma=c(2,0,3,0)函数mtext用来在外边空加文字标注。其用法为mtext(text,side=3,line=0,outer=FALSE),.,.,其中text为要加的文本内容,side表示在哪一边写(1为下,2为左,3为上,4为右),line表示边空从里向外数的第几行,最里面的一行是第0号,outer=TRUE时使用外边空,否则会使用当前图的边空。例如:par(mfrow=c(2,2),oma=c(0,0,3,0),mar=c(2,1,1,0.1)plot(Height)plot(Sex)boxplot(WeightSex);plot(Height,Weight)mtext(SimulationData,outer=T,cex=1.5),.,.,在多图环境中还可以用mfg参数来直接跳到某一个窗格,比如par(mfg=c(2,2,3,2)表示在三行两列的多图环境中直接跳到第二行第二列位置。mfg参数的后两个表示多图环境的行、列数,前两个表示要跳到的位置。可以不使用多图环境而直接在页面中的任意位置产生一个窗格来绘图,参数为fig,如:par(fig=c(4,9,1,4)/10)此参数为一个向量,分别给出窗格的左、右、下、上边缘的位置,取值为占全页面的比例,比如上面的例子在页面的右下方开一个窗格作图。,.,实验作业,1、从数据文件class.txt读入数据存为数据框,给数据框添加名字:name,age,height,weight,sex;在一页中对体重作出qqnorm图、直方图、Boxplot;对身高和体重作qqplot图,要求给出标题、坐标轴等。2、对上述数据class.txt作尽可能多的本节讲过的图。要求同时用到高级图形和低级图形函数。,.,3、将屏幕分割为四块,并分别画出y=sin(x),z=3*cos(x),a=sin(x)*cos(x),b=sin(x)/x。,.,R-语言画图,.,x=0:18plot(x,x,pch=x,col=x)points(x,18-x,pch=x)matplot(x,cbind(x,18-x),.,画图,spring=data.frame(compression=c(41,39,43,53,42,48,47,46),distance=c(120,114,132,157,122,144,137,141)attach(spring)(Hookeslaw:f=.5ks)plot(distancecompression)plot(compression,distance),.,画图,par(mfrow=c(2,2)#准备画22的4个图plot(compression,distance,main=HookesLaw)#只有标题的图plot(compression,distance,main=HookesLaw,xlab=x,ylab=y)#标题+x,y标记identify(compression,distance)#标出点号码,.,画图,plot(compression,distance,main=HookesLaw)#只有标题的图text(46,120,f=1/2*k*s)#在指定位写入文字plot(compression,distance,main=HookesLaw)#只有标题的图text(locator(2),Iamhere!)#在点击的两个位置写入文字,.,.,画图,library(mass);data(Animals);attach(Animals)plot(body,brain)plot(sqrt(body),sqrt(brain)plot(body)0.1,(brain)0.1)plot(log(body),log(brain),.,.,画图(原始数据),par(mfrow=c(1,1),pch=1)plot(body,brain,xlim=c(0,6000)text(x=body,y=brain,labels=s(Animals),adj=0)#adj=0impliesleftadjustedtext,.,.,画图(几个点),plot(bodyc(1,3,8),brainc(1,3,8),xlim=c(0,200)text(x=bodyc(1,3,8),y=brainc(1,3,8),labels=s(Animals,c(1,3,8),adj=0),.,.,画图(对数变换后),Par(cex=0.7,mex=0.7)#character(cex)语句之间用换行或分号(;)分开.,.,函数的编辑,fix(median.mean.ratio)这时会出现一个记事本编辑器编辑并试图存了之后如果发生错误(不会存),往往会让你编辑改过但有语法错误的fix();如果还使用fix(median.mean.ratio)则是编辑以前的版本.,.,函数,函数可以有缺省值,例如Expo=function(y,x=2)z=yx;zy=seq(0,1,length=100);plot(y,Expo(y),type=l)函数可以不写return,这时最后一个值为return的值.为了输出多个值最好使用list.,.,颜色画图函数,view.colours=function()plot(1,1,xlim=c(0,14),ylim=c(0,3),type=n,axes=F,xlab=,ylab=)text(1:6,rep(2.5,6),paste(1:6),col=palette()1:6,cex=2.5)text(10,2.5,Defaultpalette,adj=0)rainchars=c(R,O,Y,G,B,I,V)text(1:7,rep(1.5,7),rainchars,col=rainbow(7),cex=2.5)text(10,1.5,rainbow(7),adj=0)cmtxt=substring(cm.colors,1:9,1:9)#Splitcm.colorsintoits9characterstext(1:9,rep(0.5,9),cmtxt,col=cm.colors(9),cex=3)text(10,0.5,cm.colors(9),adj=0)view.colours(),.,.,画图(继续),attach(spring);s(spring)=LETTERS1:8;springplot(distance,compression)identify(distance,compression,s(spring),.,.,画图(继续),par(mfrow=c(1,2)plot(x-0:50,y-pi*x2,xlab=Radius,ylab=expression(Area=pi*r2),type=b)plot(xsines,1,2,3,41,1.564e-013.090e-014.540e-015.878e-012,3.090e-015.878e-018.090e-019.511e-013,4.540e-018.090e-019.877e-019.511e-014,5.878e-019.511e-019.511e-015.878e-015,7.071e-011.000e+007.071e-011.225e-166,8.090e-019.511e-013.090e-01-5.878e-017,8.910e-018.090e-01-1.564e-01-9.511e-018,9.511e-015.878e-01-5.878e-01-9.511e-019,9.877e-013.090e-01-8.910e-01-5.878e-0110,1.000e+001.225e-16-1.000e+00-2.449e-1611,9.877e-01-3.090e-01-8.910e-015.878e-0112,9.511e-01-5.878e-01-5.878e-019.511e-0113,8.910e-01-8.090e-01-1.564e-019.511e-0114,8.090e-01-9.511e-013.090e-015.878e-0115,7.071e-01-1.000e+007.071e-013.674e-1616,5.878e-01-9.511e-019.511e-01-5.878e-0117,4.540e-01-8.090e-019.877e-01-9.511e-0118,3.090e-01-5.878e-018.090e-01-9.511e-0119,1.564e-01-3.090e-014.540e-01-5.878e-0120,1.225e-16-2.449e-163.674e-16-4.898e-16,.,.,画图(继续matplot),x-0:50/50matplot(x,outer(x,1:8,function(x,k)sin(k*pi*x),ylim=c(-2,2),type=plobcsSh,main=matplot(,type=plobcsSh),.,.,画图(符号和线条类型),par(mfrow=c(1,1)plot(1:10,sin(1:10),lty=1,pch=2,type=b),.,画图(legend),x-seq(-pi,pi,len=65)plot(x,sin(x),type=l,ylim=c(-1.2,1.8),col=3,lty=2)points(x,cos(x),pch=3,col=4)lines(x,tan(x),type=b,lty=1,pch=4,col=6)title(legend(.,lty=c(2,-1,1),pch=c(-1,3,4),merge=TRUE),cex.main=1.1)legend(-1,1.9,c(sin,cos,tan),col=c(3,4,6),lty=c(2,-1,1),pch=c(-1,3,4),merge=TRUE,bg=gray90),.,.,Table和barplot,tN-table(Ni-rpois(100,lambda=5);tN0123456789111217121416141994211r-barplot(tN,col=gray),.,Table和barplot,lines(r,tN,type=h,col=red,lwd=2)#-type=hplotting*is*barplot,.,Table和barplot,barplot(tN,space=1.5,axisnames=FALSE,sub=barplot(.,space=0,axisnames=FALSE)#如space=1.5则有稀牙缝,.,Table和pie,pie(tN),.,画图(boxplot),par(mfrow=c(2,1)data(faithful)#readindatasetnames(faithful)attach(faithful)#toaccessthenamesaboveboxplot(waiting,main=Waitingtime,horizontal=TRUE)boxplot(eruptions,main=Eruptions,horizontal=TRUE)detach(faithful)#tidyuppar(mfrow=c(1,1),.,画图(boxplot),data(ToothGrowth)boxplot(lendose,data=ToothGrowth,boxwex=0.25,at=1:3-0.2,subset=supp=VC,col=yellow,main=GuineaPigsToothGrowth,xlab=VitaminCdosemg,ylab=toothlength,ylim=c(0,35)boxplot(lendose,data=ToothGrowth,add=TRUE,boxwex=0.25,at=1:3+0.2,subset=supp=OJ,col=orange)legend(2,9,c(Ascorbicacid,Orangejuice),fill=c(yellow,orange)作了两个图叠加,一个为subset=supp=“VC“,另一个为subset=supp=”OJ“.数据ToothGrowth有两个数量变量(len,dose)和一个属性变量(supp);对每个supp,dose各有三个值(各形成三个盒形图).lendose意味着box为len所做.,.,.,画图(qq图),par(mfrow=c(1,3)y-rt(200,df=5)qqnorm(y);qqline(y,col=2)#和正态分布比qqplot(y,rt(300,df=5);#和t(5)分布比data(precip)qqnorm(precip,ylab=“Precipitationin/yrfor70UScities”);qqline(precip,col=3)#和正态分布比par(mfrow=c(1,1),.,画图(pairs),data(iris)pairs(iris1:4,main=AndersonsIrisData-3species,pch=21,bg=c(red,green3,blue)codes(iris$Species)#iris为1505数据,这里是4个数量变量的点图(最后一个是分类变量(iris$Species),.,.,画图(stars),data(mtcars)stars(mtcars,1:7,key.loc=c(14,1.5),main=MotorTrendCars:fullstars(),flip.labels=FALSE)#mtcars为3211数据,这里只选前7个数量变量的点图,.,.,画图
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 香港报社面试题目及答案
- 2025年汽车维修技术手册及常见问题解答文档库
- 2025年猪肉行业人才招聘考试模拟题
- 2025年心理咨询师招聘面试预测题及专业技巧
- 2025年石油化工高级操作工技能鉴定要点与模拟题
- 2025年锰矿项目申请报告模板
- 2025年特种作业类特种设备作业-锅炉水处理G3参考题库含答案解析
- 2025年特种作业类烟花爆竹安全作业烟花爆竹储存作业-烟花爆竹产品涉药作业参考题库含答案解析
- 2025年特种作业类危险化学品安全作业磺化工艺作业-烷基化工艺作业参考题库含答案解析
- 布病与包虫病课件教材
- 国民经济行业分类代码(2024年版)
- 电网工程设备材料信息参考价2025年第一季度
- 2024年河南省鄢陵县事业单位公开招聘教师岗笔试题带答案
- 贷款押金合同协议书范本
- 孕妇宫颈机能不全课件
- 2025至2030中国微流控芯片行业发展态势与投资规划研究报告
- 房屋市政工程生产安全重大事故隐患判定检查表(2024版)
- 2025至2030国PLM市场深度调查与未来前景预测研究报告
- 抖音公会合同协议
- 装配式预制场管理制度
- 轮胎维修安全管理制度
评论
0/150
提交评论