R语言学习总结_第1页
R语言学习总结_第2页
R语言学习总结_第3页
R语言学习总结_第4页
R语言学习总结_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

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

文档简介

r语言学习摘要近一学期的学习,对r语言陌生,所以到现在也大体了解了,遇到了困难的烦恼,受到苦恼的困扰,冥想的辛苦,解决问题后有明朗的快活感。在学习过程中,以前掌握的数学基础给我带来了不少方便,严肃的态度和踏实的性格也帮了我很大的忙。这个学期学了r语言的基本操作和语法,以及适合具体统计问题的解法。教师及时完成课后作业,达到学习目的,加强了对r语言操作的熟练程度。一、早期r软件r软件是一套完整的数据处理、计算和绘图软件系统。存储和处理、阵列计算、完整、一致的统计分析工具、良好的统计映射功能、简单、强大的编程语言等。接触r语言后,我的第一种感觉是方便而有力。r语言有很多函数和程序包。我们不直接写复杂的算法,只需几行代码就能解决复杂的问题,所以使用起来很方便。同时,数据输入、实践分支、生命周期和用户可以自定义功能。也就是说,当找不到合适的函数或软件包来解决遇到的问题时,可以对其进行编程,以实现各种特定功能。这就是r语言的长处。二、学习经验在学习这本书的过程中,我不仅加深了对统计方法的理解,而且掌握了r软件的编程方法和基本方法,理解了各种函数的意义和用法,并将两者结合起来解决了实际的统计问题。1,r语言基本语法和技巧r语言包含基本数字、文字和矢量操作,以及与矢量操作相关的许多函数。您还可以非常灵活地访问矢量元素和子集。数组经常出现在r语言中,可以将其视为定义了维(dim属性)的矢量。因此,阵列可以执行各种运算,并存取阵列元素和子集。二维阵列(矩阵)是一种更重要、更特殊的阵列类型,r可以执行内积、外积、乘法、解、奇异值分解和最小二乘拟合等运算,执行矩阵组合、拉直等。Apply()函数可以计算矩阵的一维或多个维。例如,apply(A,1,mean)表示行A的总和。r语言允许不同类型的元素放在一个集合中,该集合称为列表,列表元素始终可以按列表名称下标的形式引用。“列表名称下标”表示容易混淆的子列表。需要注意的是,r语言中非常重要的数据结构之一通常是矩阵形式的数据data.frame(数据框),但是每列可以是不同的类型,数据框中的每列是一个变量,每行是一个观测值,每列必须具有相同的长度。数据框架元素可以使用下标或下标矢量引用。使用非常简单的示例,说明矢量、矩阵和数据帧的简单使用。输入以下内容:A-matrix(c(1336012),2,6,by row=t) # a将第2行第6列,逐行矩阵X-as.data.frame(A) # a转换为数据框形式的Xx133602,seq(1,5,2) #输出x的第1、2行和第1、3、5列输出:V1 V3 V51 1 3 52 7 9 11输入以下内容:attach(X);r-V1/V5;调用R #数据框x以计算和输出V1与V5的比率输出:10.200000 0.636363636此外,其他高级程序语言通用的程序控制结构(如分支、循环等)也可以在r语言中使用。If/else语句、for循环等。因此,r语言也可以根据情况轻松地编写所需的函数。例如:编写r程序,输入整数n,如果n小于0,则停止运算并输出“需要正整数”。否则,如果n是偶数,则n除以2会分配给n。否则,将3n 1指定给n。N=1停止,“操作成功”继续循环,直到输出解决方法:chapter2。r”编写新程序脚本以编写代码。F-function(n)If(n=0) list(必须输入“正整数”)ElserepeatIf(n=1) break #n=1时退出else if(n/2=as)。integer (n/2) n-n/2 # n为偶数时,2elsein-3 * n 1除外List(“操作成功”)在r窗口中输入以下内容:source(“chapter 2 . r”);F(32)输出:1“计算成功”输入以下内容:F(-5)输出:“1”必须输入正整数2、r在统计说明中的应用使用数据帧(plyr包)辅助小函数1 splat函数:角色:将原始函数的多个参数打包为一个参数,然后输出新函数。这意味着您需要在函数中输入多个参数,但是现在,在输入splat后,只需输入一个参数list,无需单独输入参数。结果函数可以替换为新函数。M*ply(a_matrix,FUN)的作用与a*ply(a_matrix,1,splat(FUN)相同是:(1)使用参数Hp _ per _ cyl-function (HP、cyl、)HP/cylSpat (HP _ per _ cyl) (mt cars 1,)1 18.33333Spat (HP _ per _ cyl) (mt cars)118.3333333 18.33333 23.25000 18.3333333 21.87500 17.50000 30.62500 15.50000 23.750001020 . 50000 20 . 50000 22 . 50000 22 . 50000 22 . 50000 25 . 62500 26 . 87500 28 . 75000 16 . 500001913.00000 16.25000 24.25000 18.75000 18.75000 30.62500 21.87500 16.5000 22.750002828.25000 33.0000 29.1667 41.87500 27.25000如下所示:Hp _ per _ cyl (mt cars $ HP,mt cars $ cyl)Splat函数的优点在于,可以将字段作为参数一起输入,而无需拆分字段。(2)与plyr函数一起使用:F-function (mpg,wt,)data.frame (MW=mpg/wt)Dd ply (mt cars,(cyl),spat (f)2 each函数角色:将多个函数合并为一个函数,以便在使用此函数时,多个函数可以单独工作。结果函数可以替换为新函数。不足:您无法为作用中的函数指定其他参数,只能使用预设参数。是:Fun-function (x) c (min=min (x),max=max (x),mean=mean (x)fun(1336010)相当于:F-each(min,max,mean)f(133610)3 colwise函数Colwise(.fun,cols、)说明:fun:要转换的函数;cols是测试数据框的列中是否应包含cols,或者是要包含的列的名称。Catcolwise(.fun、)与colwise的功能相似,不同之处在于它对离散变量有效Numcolwise(.fun、)的功能与colwise类似,但对数字变量有效角色:将作用于数据框架中的行矢量的函数(如mean、median等)转换为作用于数据框架中的列矢量的函数。与Plyr函数一起使用很方便。作用结果产生新函数。示例:n missing-function(x)sum(is . na(x)Colwise(nmissing)(baseball)Colwise (n missing,(sb、cs、so)(baseball)Ddply (baseball,(year),colwise (n missing,(sb、cs、so)Numcolwise(nmissing)(baseball)相同:colwise (n missing,is.numeric) (baseball)Catcolwise(nmissing)(baseball)相同:colwise (n missing,is.discrete) (baseball)4 failwith函数Fail with (default=null,f,quiet=false)角色:修改函数,以便函数在出错时返回设置的默认值。默认值为空。作用结果产生新函数。f-function(x)if(x=1)stop( error )else 1F(1)错误in f(1) :错误Safef-failwith(,f)Safef(1)错误输入f(.): Error空值Safef-failwith(12,f,quiet=TRUE)Safef(1)1 125 summarise()函数Summarise(.data、)角色:数据框的统计摘要,为设置的统计方法或函数示例:Summarse (baseball,duration=max (year)-min (year),n teams=length (unique (team)Duration nteams1 136 132Head (ddply (baseball, id ,summarse,duration=max (year)-min (year),n teams=lenging)Id duration nteams1 aaronha01 22 3Abernte02 17 73 adairje01 12 44 ADAMS ba 01 20 25亚当斯博03 13 46 adcocjo01 16 5使用数据集变量1排序变量:arrange函数Arrange(df,(var1),(var2)作用中:依指定的栏排序。注意:使用arrange函数的后续名称将丢失,必须使用cbind重新填充。是:Arrange(mtcars、cyl、disp)cars-c bind(vehicle=row . names(mt cars),mt cars)Arrange(cars、cyl、disp)-将行名作为新列添加到数据框中,然后对其进行排序2变更变数名称Rename (x,replace,warn _ missing=true)角色:按名称(而不是按位置)修改变量名。是:Head (rename (TMT,replace=c (mpg= avgpg , Cly= new )获取行或列3中的数据Take (x,along,indices,drop=false)角色:根据x中的维获取数字。参数说明:x是源数据的数量,array或dataframe中选择所需的构件。Along:维度。1表示行,2表示列,3表示快速数组等。Indices:与特定维相对应的手指;Drop:是否集成是:Take (mt cars,2,1)-选取第一栏Take (mt cars,1,1)-第一行使用数据集1数据集链接1) match_dfMatch_df(x,y,on=NULL)角色:x是需要提取的原始数据框,y是条件数据框。On指定用于连接的变量。默认值是两个数据框中的所有变量,可以是多个变量。通过On后面的字段将选择数据导入到x数据框与inner join相同,不同之处在于结果集是x的子集。Inner join包含两个数据框中的所有字段。是:基本数据A-c(a 、 b 、 c 、 d )B- c(“aa”、“bb”、“aa”、“dd”)C-c(1,2,3,4)T1-data.frame(a、b、c)T2-data.frame (a=c (a , c , e ),b=c (aa , ab , CD )Match_df(t1,t2,on=c(a , b )A b c1 a aa 12)joinJoin (x,y,by=null,type=left ,match=all )角色:连接两个数据框参数说明:x,y是数据框。By=要连接的字段,type是连接类型(left、right、full)。Match:all(获取所有匹配的其他属性值),first(仅获取匹配的第一个属性值)Join(t1,t2,by=x2 ,type=inner )Join(t1,t2,by=x2 ,type=left )Join(t1,t2,by=x2 ,type=right )Tt1-data.frame (x1=c

温馨提示

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

最新文档

评论

0/150

提交评论