R语言讲义(包括各种回归).ppt
《R语言讲义(包括各种回归).ppt》由会员分享,可在线阅读,更多相关《R语言讲义(包括各种回归).ppt(120页珍藏版)》请在三一办公上搜索。
1、R 语言讲义,吴喜之,免费(没有权力和铜臭)资源公开,可改变代码(不是黑盒子,也不是吝啬鬼,透明是防止“腐败”的最好方式)容易学习。可编程以实行复杂的课题可扩展:通过数千个网上提供的适用于不同领域、不同目的、不同方法的软件包来实现你的目标。也可以把你的方法贡献出来功能强大(绘图功能,优秀的内在帮助系统,R社区的支持,不断更新,不断修正)没有任何一个商业软件有如此多和如此新的算法,世界应用统计学家大都把自己的方法首先以R来实现,并尽量放到R 网站上一年多,R网站的软件包数量增加了两倍,从近1000个到近3000多个。大都都有关于计算、演示和输入输出方法的函数和例子数据除非得到巨额资助(或者永远使
2、用盗版软件),没有理由在公立学校教授商业软件绝大多数美国统计研究生都会的语言(Berkeley统计和应用数学本科都开设R语言课)我的很大一部分数据分析知识的来源就是R.我都能学会,并且到处宣传和普及,相信你们会做得更好!,点击CRAN得到一批镜像网站,下载R(http:/www.r-project.org/),点击镜像网站比如Berkeley,Packages(每个都有大量数据和可以读写修改的函数/程序),base The R Base Packageboot Bootstrap R(S-Plus)Functions(Canty)class Functions for Classificati
3、oncluster Cluster Analysis Extended Rousseeuw et al.concord Concordance and reliabilitydatasets The R Datasets PackageexactRankTests Exact Distributions for Rank and Permutation Testsforeign Read Data Stored by Minitab,S,SAS,SPSS,Stata,Systat,dBase,.graphics The R Graphics PackagegrDevices The R Gra
4、phics Devices and Support for Colours and Fontsgrid The Grid Graphics PackageKernSmooth Functions for kernel smoothing for Wand&Jones(1995)lattice Lattice Graphics Interfacetools Tools for Package Developmentutils The R Utils Package,Packages(继续),MASSMain Package of Venables and Ripleys MASSmethodsF
5、ormal Methods and ClassesmgcvGAMs with GCV smoothness estimation and GAMMs by REML/PQLmulttestResampling-based multiple hypothesis testingnlmeLinear and nonlinear mixed effects modelsnnetFeed-forward Neural Networks and Multinomial Log-Linear ModelsnortestTests for NormalityoutliersTests for outlier
6、splsPartial Least Squares Regression(PLSR)and Principal Component Regression(PCR)pls.pcrPLS and PCR functionsrpartRecursive PartitioningSAGxStatistical Analysis of the GeneChipsmaStatistical Microarray AnalysisspatialFunctions for Kriging and Point Pattern AnalysissplinesRegression Spline Functions
7、and ClassesstatsThe R Stats Packagestats4Statistical Functions using S4 ClassessurvivalSurvival analysis,including penalised likelihood.tcltkTcl/Tk InterfacetoolsTools for Package DevelopmentutilsThe R Utils Package,Packages(网上),网上还有许多,所有这些Packages可以自由下载,Base中的package包含常用的函数和数据而其他的packages包含各个方向统计学家
8、自己发展的方法和数据。希望你是下一个加盟这些packages的作者之一。,安装Packages,关机时是否保存?,如果是,你的运算结果(赋值的变量及函数等)保存在一个文件(名字为.RData)中,下次开机时还会重新载入.如果你不要则删去该文件即可.其实,除非是做一个需要多次才完成的大课题,一般你都不想保存.你所用的代码可以以程序脚本形式(*.R,注意:一定要自己敲入”.R”,没有默认)保存,几个有用的函数,函数:f(x):名字(变元)getwd()setwd(dir=f:/2010stat)#或setwd(f:/2010stat)getwd()x=rnorm(100)ls()?rnorm#或h
9、elp(rnorm)apropos(“norm“)identical(1:10,1:10)identical(1:10,as.numeric(1:10)identical(1:10,as.integer(1:10),赋值和运算,z=rnorm(1000000,4,0.1)median(z)赋值:“=”可以用“y-w简单数学运算有:+,-,*,/,%*%,%(mod)%/%(整数除法)等等常用的数学函数有:abs,sign,log,log2,log10,logb,expm1,log1p(x),sqrt,exp,sin,cos,tan,acos,asin,atan,cosh,sinh,tanh,赋
10、值和运算,round,floor,ceilinggamma,lgamma,digamma and trigamma.sum,prod,cumsum,cumprodmax,min,cummax,cummin,pmax,pmin,rangemean,length,var,duplicated,uniqueunion,intersect,setdiff,=,=,&,|,!,从高到低的运算次序,一些基本运算例子,x=1:100(x=1:100)sample(x,20)set.seed(0);sample(1:10,3)#随机种子!z=sample(1:200000,10000)z1:10#向量下标y=
11、c(1,3,7,3,4,2)zy,一些基本运算例子,z=sample(x,20,rep=T)z(z1=unique(z);length(z1)z=sample(x,100,rep=T)xz=setdiff(x,z)sort(union(xz,z)sort(union(xz,z)=xsetequal(union(xz,z),x)intersect(1:10,7:50)sample(1:100,20,prob=1:100),一些基本运算例子,pi*102#能够用?”*”来看基本算术运算方法*(pi,(10,2)pi*(1:10)2x-pi*102xprint(x)(x=pi*102)pi(1:5)
12、print(x,digits=12)class(x)typeof(x),一些基本运算例子,class(cars)typeof(cars)names(cars)summary(cars)str(cars)row.names(cars)class(dist speed)plot(dist speed,cars),一些基本运算例子,head(cars)#cars1:6,tail(cars)ncol(cars);nrow(cars)dim(cars)lm(dist speed,data=cars)cars$qspeed=cut(cars$speed,breaks=quantile(cars$speed
13、),include.lowest=TRUE)names(cars)cars3table(cars3)is.factor(cars$qspeed)plot(dist qspeed,data=cars)(a=lm(dist qspeed,data=cars)summaryu(a),一些基本运算例子,x-round(runif(20,0,20),digits=2)summary(x)min(x);max(x)median(x)#medianmean(x)#meanvar(x)#variancesd(x)#standard deviation sqrt(var(x)rank(x)#rankorder(
14、x)xorder(x)sort(x)sort(x,decreasing=T)#sort(x,dec=T)sum(x);length(x)round(x),一些基本运算例子,fivenum(x)#quantilesquantile(x)#quantiles(different convention)有多种定义quantile(x,c(0,.33,.66,1)mad(x)#normalized mean deviation to the median(“median average distance“)可用?mad查看cummax(x)cummin(x)cumprod(x)cor(x,sin(x/
15、20)#correlation,一些基本运算例子,#直方图x-rnorm(200)hist(x,col=light blue)rug(x)#茎叶图stem(x)#散点图N-500 x-rnorm(N)y-x+rnorm(N)plot(y x)a=lm(yx)abline(a,col=red)#或者abline(lm(yx),col=red)print(Hello World!)paste(x 的最小值=,min(x)#cat(enddocumentn,file=RESULT.tex,append=TRUE)demo(graphics)#演示画图,一些基本运算例子,#复数运算x=2+3i(z-c
16、omplex(real=rnorm(10),imaginary=rnorm(10)complex(re=rnorm(3),im=rnorm(3)Re(z)Im(z)Mod(z)Arg(z)choose(3,2);factorial(6)#解方程f=function(x)x3-2*x-1uniroot(f,c(0,2)#迭代#如果知道根为极值f=function(x)x2+2*x+1optimize(f,c(-2,2),分布和产生随机数,正态分布:pnorm(1.2,2,1);dnorm(1.2,2,1);qnorm(.7,2,1);rnorm(10,0,1)#rnorm(10)t分布:pt(1
17、.2,1);dt(1.2,2);qt(.7,1);rt(10,1)此外还有指数分布、F分布、“卡方”分布、Beta分布、二项分布、Cauchy分布、Gamma分布、几何分布、超几何分布、对数正态分布、Logistic分布、负二项分布、Poisson分布、均匀分布、Weibull分布、Willcoxon分布等变元可以是向量!,a=factor(letters1:10)a3=w#不行a=as.character(a)a3=wa=factor(a)a,可能遇到的问题,输入输出数据,x=scan()1.5 2.6 3.7 2.1 8.9 12-1.2-4#等价于x=c(1.5,2.6,3.7,2.1,
18、8.9,12,-1.2,-4)setwd(“f:/2010stat”)#或setwd(f:2010stat)(x=rnorm(20)write(x,f:/2010stat/test.txt)y=scan(f:/2010stat/test.txt);yy=iris;y1:5,;str(y)write.table(y,f:/2010stat/test.txt,row.names=F)w=read.table(f:/2010stat/test.txt,header=T)str(w)write.csv(y,f:/2010stat/test.csv)v=read.csv(f:/2010stat/test
19、.csv)str(v)data=read.table(clipboard)write.table(clipboard),序列和向量,z=seq(-1,10,length=100)#z=seq(-1,10,len=100)z=seq(10,-1,-1)#z=10:-1x=rep(1:3,3)x=rep(3:5,1:3)x=rep(c(1,10),c(4,5)w=c(1,3,x,z);w3x=rep(0,10);z=1:3;x+zx*z rev(x)z=c(no cat,has,nine,tails)z1=no catz=1:5z7=8;zz=NULLzc(1,3,5)=1:3;zrnorm(10
20、)c(2,5)z-c(1,3)#去掉第1、3元素z=sample(1:100,10);zwhich(z=max(z)#给出下标,向量矩阵,x=sample(1:100,12);xall(x0);all(x!=0);any(x0);(1:10)x0diff(x)diff(x,lag=2)x=matrix(1:20,4,5);xx=matrix(1:20,4,5,byrow=T);xt(x)x=matrix(sample(1:100,20),4,5)2*xx+5y=matrix(sample(1:100,20),5,4)x+t(y)(z=x%*%y)z1=solve(z)#solve(a,b)可以
21、解ax=b方程 z1%*%zround(z1%*%z,14),矩阵,nrow(x);ncol(x);dim(x)#行列数目x=matrix(rnorm(24),4,6)xc(2,1),#第2和第1行x,c(1,3)#第1和第3列x2,1#第2,1元素xx,10,1#第1列大于0的元素sum(x,10)#第1列大于0的元素的个数sum(x,10apply(x,2,sum),矩阵/高维数组,#上下三角阵x=matrix(rnorm(24),4,6)diag(x)diag(1:5)diag(5)xlower.tri(x)=0#xupper.tri(x)=0;diag(x)=0 x=array(run
22、if(24),c(4,3,2);xis.matrix(x)#可由dim(x)得到维数(4,3,2)is.matrix(x1,)x=array(1:24,c(4,3,2)xc(1,3),x=array(1:24,c(4,3,2)apply(x,1,mean)apply(x,1:2,sum)apply(x,c(1,3),prod),矩阵/高维数组/scale,#矩阵与向量之间的运算 x=matrix(1:20,5,4)sweep(x,1,1:5,*)x*1:5 sweep(x,2,1:4,+)(x=matrix(sample(1:100,24),6,4);(x1=scale(x)(x2=scale
23、(x,scale=F);(x3=scale(x,center=F)round(apply(x1,2,mean),14)apply(x1,2,sd)round(apply(x2,2,mean),14);apply(x2,2,sd)round(apply(x3,2,mean),14);apply(x3,2,sd),Data.frame,x=matrix(1:6,2,3)z=data.frame(x);zz$X2attributes(z)names(z)=c(TOYOTA,GM,HUNDA)row.names(z)=c(2001,2002)Zattach(x)GMdetach(x)GMsapply(
24、z,is.numeric)#apply(z,2,is.numeric),缺失值问题等,airqualitycomplete.cases(airquality)#哪一行没有缺失值which(complete.cases(airquality)=F)sum(complete.cases(airquality)na.omit(airquality)#append,cbind,vbindx=1:10;x12=3(x1=append(x,77,after=5)cbind(1:3,4:6);rbind(1:3,4:6)#去掉矩阵重复的行(x=rbind(1:5,runif(5),runif(5),1:5,
25、7:11)x!duplicated(x),unique(x),List,#list可以是任何对象的集合(包括lists)z=list(1:3,Tom=c(1:2,a=list(R,letters1:5),w=hi!)z1;z2z$Tz$T$a2z$T3z$T$wattributes(airquality)#属性!airquality$Ozoneattributes(matrix(1:6,2,3),Categorical dataA survey asks people if they smoke or not.The data is Yes,No,No,Yes,Yesx=c(Yes,No,No
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 讲义 包括 各种 回归

链接地址:https://www.31ppt.com/p-5447057.html