2022年R学习笔记 .pdf

上传人:Che****ry 文档编号:24176463 上传时间:2022-07-03 格式:PDF 页数:14 大小:67.21KB
返回 下载 相关 举报
2022年R学习笔记 .pdf_第1页
第1页 / 共14页
2022年R学习笔记 .pdf_第2页
第2页 / 共14页
点击查看更多>>
资源描述

《2022年R学习笔记 .pdf》由会员分享,可在线阅读,更多相关《2022年R学习笔记 .pdf(14页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、R 学习笔记R 学习笔记2011年 08 月 31 日R语言是什么的问题,请自己google 。这个是从书上写下的笔记,主要是基本操作部分。具体的引用取决于你的任务,大家可以参考薛毅的书。囧:发现加不了图,大家要看图的可以去我的iask 里下。推荐用 R studio (用 google 搜,baidu 搜的是个数据恢复文件,再囧一下,付费的果然在前面。)练习,比较集成化(虽然我的老师强烈反对IDE)。就是 R studio必须先安装好 R才可以。R学习笔记 R 统计建模与 R软件 薛毅著 by fame 1、基本操作1.1 导言X1-c(,) 数组赋值操作mean(X1) 求平均值sd(X1

2、) 求标准偏差plot(X1,X2) 画 x-y 图hist(X1) 画柱状图rt- read.table(“exam0203.txt ”,head=TRUE); 名师归纳总结 精品学习资料 - - - - - - - - - - - - - - -精心整理归纳 精选学习资料 - - - - - - - - - - - - - - - 第 1 页,共 14 页 - - - - - - - - - 第一行读入文件 exam0203.txt ,并 head=TRUE 认为文件中第一行是文件头,否则文件第一行作文数据处理。Source( “*.R ”) 执行已经编写好的R程序load( “*.RDa

3、ta”) 载入工作空间印象save.image( “*.RData ”) sort(X) 排序命令var(X) 计算标准差median(X) 中位数sum(X) 总的求和命令prod(X) 总的求积命令1.2 产生有序数列1.2.1 等差数列x:y 以 1 为公差的等差数列注意:等差运算高于乘法运算,所以x-2*1:15=x-2*(1:15) 1.2.2 等间隔函数seq(from=value1,to=value2,by=value3) 注:by 是公差1.2.3 重复函数rep(x,time=* )补充: lines (x)这是实线连接函数名师归纳总结 精品学习资料 - - - - - -

4、- - - - - - - - -精心整理归纳 精选学习资料 - - - - - - - - - - - - - - - 第 2 页,共 14 页 - - - - - - - - - 1.3 向量下标运算允许: x*访问xx ,5 做逻辑运算例子: y=1-x,x=0; y-numeric(length(x) yx0-1-xx=0=0 1.2.4 属性attributes() attr() 返回对象的各种特殊属性组成的列表1.2.5 因子factor(x = character(), levels, labels = levels, exclude = NA, ordered = is.ord

5、ered(x) gl ()gl(n, k, length = n*k, labels = 1:n, ordered = FALSE) 方便地产生因子2、多维数组2.1 一维数组dim() 例子:z-1:12 dim(z)-c(3,4) 结果:z ,1 ,2 ,3 ,4 名师归纳总结 精品学习资料 - - - - - - - - - - - - - - -精心整理归纳 精选学习资料 - - - - - - - - - - - - - - - 第 3 页,共 14 页 - - - - - - - - - 1, 1 4 7 10 2, 2 5 8 11 3, 3 6 9 12 2.2 多维数组arr

6、ay ()array(data = NA, dim = length(data), dimnames = NULL) data 是一个 向量数据; dim 是数组各维的长度,默认为原向量长度,dimnames是数组维名,默认为空example: x-array(1:20,dim=c(4,5);x-array(0,dim=c(4,5,7,8,9) 2.3 矩阵构造matrix(data = NA, nrow = 1, ncol = 1, byrow = FALSE,dimnames = NULL) data 是向量数据; nrow 是矩阵行数; ncol 是矩阵列数;当byrow=TRUE 时生

7、成矩阵的数据按照行放置;默认值byrow=FALSE ,数据安列放置;dimnames是数组维的名字,默认为空。A-matrix(1:15,nrow=3,ncol=5,byrow=TRUE) 2.4 数组运算数组运算应尽量是dim 相同;在 dim 不同时,一般把相应位置上的数据进行运算,把短的向量重复使用,从而和长的 向量进行匹配。2.5 矩阵运算2.5.1 转置t(A) 2.5.2 行列式det() 2.5.3 向量内积名师归纳总结 精品学习资料 - - - - - - - - - - - - - - -精心整理归纳 精选学习资料 - - - - - - - - - - - - - - -

8、 第 4 页,共 14 页 - - - - - - - - - x%*%y crossprod(x,y)= t(x)%*%y tcrossprod(x,y)= x%*% t(y) 2.5.4 矩阵外积x%o%y outer(x,y) = x%o%y outer(X, Y, FUN=*, ) X,Y 为矩阵, fun 是做外积运算函数,默认为乘法;此函数在绘制三维曲面时非常有用。它可以生成一个X-Y的网格。2.5.5 矩阵乘法和向量内积相同,只是要求A*B有相同的维数2.5.6 生成对角阵和矩阵取对角运算diag(v) 作用取决于变量。v 是一个 向量时,表示以 v 为对角元素的对角阵;v 是一

9、个矩阵时,表示取矩阵的对角线上元素;2.5.7 解线性方程组求解 Ax=b命令为 solve(A,b); 求矩阵 A的逆,命令为 solve (A)2.5.8 矩阵的特征值和特征 向量eigen(Sm) 次命令为求对称矩阵的特征值和特征向量example:ev-engen(Sm) ev$values; ev$vectors; 2.5.9 矩阵的奇异值分解名师归纳总结 精品学习资料 - - - - - - - - - - - - - - -精心整理归纳 精选学习资料 - - - - - - - - - - - - - - - 第 5 页,共 14 页 - - - - - - - - - svd(

10、A)即:A=UDVT ,其中 U,V是正交阵, D为对角阵,也就是矩阵A的奇异值而attach(svd(A) u%*%diag(d)%*%t(v) 把上述过过程在返还回去。attach是为了说明 u,v,d 属于 svd(A)2.5.10 最小拟合与 QR分解lsfit(x,y)ls.diag()可以给出进一步信息Qr 分解qr ()qr.coef(0 qr.fitted() qr.resid() 2.6 列表与数据框list是一种特别的对象集合,各对象元素的类型可以任意。Example:Lst-list(name ”Fred”,wife= ”Mary”,no.children=3,child

11、.age=c(4,7,9) 2.7 控制流2.7.1 分支语句2.7.1.1 if/else语句if(cond) statement_1 if(cond) statement_1 else statement_2 example:名师归纳总结 精品学习资料 - - - - - - - - - - - - - - -精心整理归纳 精选学习资料 - - - - - - - - - - - - - - - 第 6 页,共 14 页 - - - - - - - - - if(any(x=0) y-log(1+x) else y-log(x) 另外还有:if(cond1) statement_1 els

12、e if (cond2) statement_2 else if (cond3) statement_3 else statement_4 2.7.1.2 switch 语句switch(statement,list) statement 是表达式, list是列表,可以用有名定义。如果 statement 的返回值在 1 到 length (list),则返回相应位置的值,否则返回NULL Example:x-3 switch(x,2+2,mean(1:10),rnorm(4) switch(2,2+2,mean(1:10),rnorm(4) switch(6,2+2,mean(1:10),

13、rnorm(4) 2.7.2 终止语句与空语句break :终止循环,使程序跳到循环之外空语句是 next ,继续执行2.7.3 循环语句2.7.3.1 for 循环语句for (name in expr_1 ) expr_2 其中 name是循环变量, expr_1 是一个 向量表达式(一般是一个序列1:20);expr_2 通常是一组表达式名师归纳总结 精品学习资料 - - - - - - - - - - - - - - -精心整理归纳 精选学习资料 - - - - - - - - - - - - - - - 第 7 页,共 14 页 - - - - - - - - - 2.7.3.2 w

14、hile 循环语句while (condition)expr 若条件 condition成立,执行表达式expr 2.7.3.3 repeat 语句repeat expr repeat 依赖 break 语句跳出循环example:f-1; f2-1; i-1; repeat fi+2-fi+fi+1 i=1000) break 3、统计量的描述3.1 位置度量3.1.1 平均值求解w.mean-mean (w,trim=0.1 );trim 取值在 00.5 之间,表示在计算平均值前需要舍去的异常值的比例,利用这个参数可以有效改善结果。3.1.2 顺序统计量sort 函数高阶用法sort (

15、X,method=c( ”shell ”, ”quick ”), decreasing=FALSE)method 决定用 shell排序方法, quick 则是快速排序3.1.3 中位数名师归纳总结 精品学习资料 - - - - - - - - - - - - - - -精心整理归纳 精选学习资料 - - - - - - - - - - - - - - - 第 8 页,共 14 页 - - - - - - - - - median()3.1.2 百分位数quantile ()quantile(x, probs = seq(0, 1, 0.25), na.rm = FALSE,names = T

16、RUE, type = 7, .) probs 给出相应的百分位数,默认是0,1/4.1/2 ,3/4 ,1;na.rm 是逻辑变量,当 ra.rm=TRUE时可以处理缺失数据的情况。3.2 分散程度的度量方差: var() 标准差: sd()协方差矩阵: cov()相关矩阵: cor ()4、绘图函数4.1 直方图、经验分布图、 QQ 图4.1.1 直方图hist ()hist(x, breaks = Sturges, freq = NULL, probability = !freq, include.lowest = TRUE, right = TRUE, density = NULL,

17、angle = 45, col = NULL, border = NULL, main = paste(Histogram of , xname), xlim = range(breaks), ylim = NULL, xlab = xname, ylab, axes = TRUE, plot = TRUE, labels = FALSE, nclass = NULL, warn.unused = TRUE, .) TRUE绘出频率直方图counts 绘出频率直方图FALSE绘出密度直方图probability是逻辑变量,与 freq 相反,是与 S-PLUS想兼容的参数4.1.2 核密度估计

18、函数density ()density(x, bw = nrd0, adjust = 1, 名师归纳总结 精品学习资料 - - - - - - - - - - - - - - -精心整理归纳 精选学习资料 - - - - - - - - - - - - - - - 第 9 页,共 14 页 - - - - - - - - - kernel = c(gaussian, epanechnikov, rectangular, triangular, biweight, cosine, optcosine), weights = NULL, window = kernel, width, give.R

19、kern = FALSE, n = 512, from, to, cut = 3, na.rm = FALSE, . bw是贷款,可选择;当bw为默认时, R会画出其曲线。Example:w-c(75,64,47.4,66.9,62.2,62.2,58.7,63.5,66.6,64.0, 57.9,50.0,72.0) hist(w,freq=FALSE) lines(density(w),col=”blue ”) x-44:76 lines(x,dnorm(x,mean(w),sd(w),col=”red”) 4.1.3 经验分布ecdf ()plot(x, ., ylab=Fn(x), v

20、erticals = FALSE, col.01line = gray70, pch = 19) ecdf ()中的 x 是由观察值所得到的数值型向量,而在函数 plot()中的 x 是函数 ecdf ()生成的 向量,verticals是逻辑变量,为 TRUE时,表示画竖线;否则不画竖线。Example:plot(ecdf(w),verticals=TRUE,do.p=FALSE) x-44:78 lines(x,pnorm(x,mean(w),sd(w))其中,do.p=FALSE时表示不画出点处的记号;否则(TRUE ,默认值)画出记号。名师归纳总结 精品学习资料 - - - - - -

21、 - - - - - - - - -精心整理归纳 精选学习资料 - - - - - - - - - - - - - - - 第 10 页,共 14 页 - - - - - - - - - 4.1.4QQ 图鉴定样本是否近似于某种分布。qqnorm()qqline ()两种画正态 QQ 图的方法qqnorm(y, ylim, main = Normal Q-Q Plot, xlab = Theoretical Quantiles, ylab = Sample Quantiles, plot.it = TRUE, datax = FALSE, .) qqline(y, datax = FALSE,

22、 .) qqplot(x, y, plot.it = TRUE, xlab = deparse(substitute(x), ylab = deparse(substitute(y), .) example:数据和上面一样qqnorm(w);qqline (w)4.2 茎叶图,箱线图和五数总结4.2.1 茎叶图stem()stem(x, scale = 1, width = 80, atom = 1e-08) x 是数据 向量,scale 控制绘出茎叶图的长度, width 是绘图的宽度,atom 是容差如果选择 scale=2 则表示将 * 个个位数分成两段4.2.2 箱线图boxplot

23、()箱线图中,上( Q3 )下( Q1 )四分位数分别确定出中间箱体的顶部和地步。箱体中间的粗线是中位数(Me )所在的位置。有箱体上下分别伸展出去的垂直部分称为“触须”,表示数据的散步范围,最远点为1.5 倍四分位数间距。超出此范围的点称为异常值点。异常值点用“。”表示。 Boxplot三种用法:名师归纳总结 精品学习资料 - - - - - - - - - - - - - - -精心整理归纳 精选学习资料 - - - - - - - - - - - - - - - 第 11 页,共 14 页 - - - - - - - - - boxplot(x, .) X是向量数据/ 列表/ 数据框bo

24、xplot(formula, data = NULL, ., subset, na.action = NULL) formula 是公式boxplot(x, ., range = 1.5, width = NULL, varwidth = FALSE, notch = FALSE, outline = TRUE, names, plot = TRUE, border = par(fg), col = NULL, log = , pars = list(boxwex = 0.8, staplewex = 0.5, outwex = 0.5), horizontal = FALSE, add =

25、FALSE, at = NULL) X是向量数据/ 列表/ 数据框;range 是“触须”的范围(默认1.5 )notch=TRUE标出箱线图带有的切口outline=FALSE ,不标明异常值点col 是颜色变量horizontal=TRUE 将箱线图绘成水平 状态add=TRUE 在原图上画图,否则替换新图example:A-c(79.98,80.04,80.02,80.04,80.03,80.04,79.97,80.0 5,80.03,80.02,80.00,80.02) B-c(80.02,79.94,79.98,79.97,79.97,80.03,79.95,79.9 7) boxp

26、lot(A,B,notch=T,names=c(A,B),vcol=c(2,3) 4.2.3 五数总括fivenum ()fivenum(x, na.rm = TRUE) x 样本数据, na.rm=TRUE 表示计算五数总括之前所有的NA和 NAN 数据将被去掉。4.3 正态性检验与分布拟合4.3.1 正态性 W检验方法名师归纳总结 精品学习资料 - - - - - - - - - - - - - - -精心整理归纳 精选学习资料 - - - - - - - - - - - - - - - 第 12 页,共 14 页 - - - - - - - - - shapiro.test() 4.3.

27、2 经验分布的 Kolmogorov-Smirnov 检验方法ks.test() 4.3 R 中的高阶作图4.3.1 高维度作图4.3.1.1 plot ()函数plot (x,y)pairs ()coplot ()qqnorm()qqline ()qqplot ()hist ()hist (x,nclass=n )hist (x,breaks=b,)dotchart (x,)image(x,y,z,)contour (x,y,z,)persp (x,y,z,)4.3.2 低维度作图加点 points () 加线 lines() 在点处加标记text (x,y,labels ,)在图上加直线a

28、bline (a,b)画一条 y=ax+b的直线abline (h=y)画出一条过所有点的直线名师归纳总结 精品学习资料 - - - - - - - - - - - - - - -精心整理归纳 精选学习资料 - - - - - - - - - - - - - - - 第 13 页,共 14 页 - - - - - - - - - abline (v=x)画出一条过所有点的竖直线abline (lm.obj )表示绘出线性模型得到的方程polygon ()可以在图上加上多边形,(x,y)为坐标,一次连接所有的点会出图形example:n - 100 ;xx - c(0:n, n:0);yy -

29、c(c(0,cumsum(stats:rnorm(n), rev(c(0,cumsum(stats:rnorm(n) plot (xx, yy, type=n, xlab=Time, ylab=Distance) polygon(xx, yy, col=gray, border = red) title(Distance Between Brownian Motions) 图上加上说明title(Distance Between Brownian Motions) axis (side ,)名师归纳总结 精品学习资料 - - - - - - - - - - - - - - -精心整理归纳 精选学习资料 - - - - - - - - - - - - - - - 第 14 页,共 14 页 - - - - - - - - -

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 高考资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁