R语言分组因子及数组.ppt

  1. 1、本文档共48页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
5.6 数组矩阵合并 5.6.1 基本方法 在R语言中,我们可以使用函数clind()把其参数变量横向拼成一个大矩阵,使用函数rlind()把其参数变量纵向拼成一个大矩阵。clind()的参数变量是矩阵或者可以看作列向量的向量,参数变量的高度应该相等(对于向量,高度即长度;对于矩阵,高度即行数)。rbind的参数变量是矩阵或者可以看作列向量的向量,参数变量的宽度应该相等(对于向量,宽度即长度;对于矩阵,宽度即行数)。如果参与合并的自变量比其它自变量短,则循环补足后再合并。 cbind()和rbind()的调用方法如下: cbind(..., deparse.level = 1), rbind(..., deparse.level = 1) 其中,“…”可以是多个向量或者数组;deparse.level 目前只能固定为一。 例:按行横向形成矩阵, 按列纵向形成矩阵 x1-rbind(c(1,2),c(3,4)) x1 [,1] [,2] [1,] 1 2 [2,] 3 4 x1-rbind(c(1,2),c(3,4)) x1 [,1] [,2] [1,] 1 2 [2,] 3 4 x2-10+x1 x3-cbind(x1,x2) x3 [,1] [,2] [,3] [,4] [1,] 1 2 11 12 [2,] 3 4 13 14 因为cbind()和rbind()的结果总是矩阵类型(有dim属性且为2),所以可以用它们把向量表示为矩阵(用cbind(x)和rbind(x))。 5.6.2 使用连接构造函数c 设a是一个数组,若要把它转换为向量(去掉dim,dimnames属性)则可以使用函数as.vector(a)。需要注意,函数只能通过 函数值返回结果而不允许修改它的自变量,比如,t(X)返回X的转置矩阵而X本身并未改变。 另一种由数组得到其数组向量的简单办法是使用函数c(),例如,c(a)返回的结果是a的数据向量,c()函数的另一个好处是它允许多个自变量,可以把多个自变量都看成数据向量而连接起来。例如,设A和B都是两个矩阵,则c(A,B)表示把A按列次序拉直为向量并与把B按列次序拉直为向量的结果连接起来,一定注意拉直是按列次序拉直的。 5.7 定义数组的操作 对于向量,我们有sum,mean等函数进行计算;对于数组,如果需要对其中一维(或若干维)进行某种计算,则可以用apply()函数自定义数组的操作。其一般形式为: apply(X, MARGIN, FUN, ...) 其中,X为一个数组,MARGIN为固定不变的维,FUN 为用来计算的函数。 实际上apply()函数可以用于任意维的数组,函数FUN可以接收任意一个向量或数组作为其第一变量。 例、对矩阵的列排序 a-cbind(c(4,9,1),c(3,7,2)) a [,1] [,2] [1,] 4 3 [2,] 9 7 [3,] 1 2 apply(a,2,sort) [,1] [,2] [1,] 1 2 [2,] 4 3 [3,] 9 7 apply(a,1,sort) [,1] [,2] [,3] [1,] 3 7 1 [2,] 4 9 2 t(apply(a,1,sort)) [,1] [,2] [1,] 3 4 [2,] 7 9 [3,] 1 2 第六章 数据列表和数据单 数据列表(list)是R语言的基本数据结构,数据列表中可以包含多种类型的数据结构,这些数据结构可以按照一定顺序构造一种数据表。 6.1 数据列表 6.2 构造数据列表 6.3 数据列表操作 6.4 数据单 6.1 数据列表 简单来讲,数据列表是一组数据元素的集合,这些数据元素可以是不同的数据结构,比如各种类型的向量,当然数据列表中也可以包含数据列表。 例:用list()函数构造家庭成员信息。 FamilyInfo-list(hostname=joe,wife=rose,no.children=3,child.ages=c(1,3,7)) FamilyInfo 在R语言的内部,数据列表的每个元素按定义的顺序都有一个编号,所以我们可以通过这个编号获取相应的元素。 例一、获取child.age FamilyInf

文档评论(0)

克拉钻 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档