向量

  • 作用:存储数值型、字符型、逻辑型数据的一维数组;
  • 生成:函数 c(),seq()生成等差数列,还可以用运算符创建向量(a:b);seq(from=,to=,by=,length=)
  • 查找:向量+[],[]确定位置,可以用c()定义位置
  • 筛选:在[]中定义关于向量的条件,eg: c[c*c>m],或者用函数subset(),eg:subset(c,c的条件)
  • 相关函数:all()全为真时返回真,any():至少有一个为真返回真;length():向量长度
  • 测试向量是否相等:all(x==y)或者用函数identical(x,y)

矩阵

  • 描述:R中矩阵是指定行数和列数的二维数组,矩阵中的元素类型必须一致即数值、字符、逻辑,用函数matrix创建;
  • matrix: matrix(data = NA, nrow = 1, ncol = 1, byrow = FALSE, dimnames = list(rnames,cnames))
  • 矩阵下标:用a,b确定元素,a或b可由c()代替来定义部分元素;
  • 矩阵的运算:%*% 乘法符号,加减不变,星号:数乘;
  • 矩阵索引:类似向量,不同在于矩阵是二维的,除行列外还可索引行列中的元素,eg:m[a,c(b,c)]表示矩阵m中a行从b到c的元素; 矩阵中元素筛选:条件定义类似向量。再结合索引;
  • 调用行和列的函数:apply(m,dimcod,f,fargs),m:矩阵,dimcod维度编号(1行2列),f:调用的函数,fargs:可选参数集;eg:对矩阵每列应用mean(),apply(m,2,mean)

数据框

  • 描述:类似于矩阵,不同在于每列可以是不同类型的数据;因此应用广泛,由data.frame创建;
  • 索引:用符号$(列表中也是);

因子(不太熟)

  • 描述:类别变量和有序类别变量在R中称为因子,factor以一个整数向量的形式存储类别值,整数的取值是1-k,k是类别变量中唯一值得个数,同时将一个由字符串(原始值)组成的内部向量映射到这些整数上。eg:c<-c(T1,T2,T1,T1),factor©=(1,2,1,1);加入参数oder=true,给定水平所对应的值会按一定顺序排列。(str()显示对象结构,summary()显示对象统计概要)

  • 相关函数:

    • tapply(a,f,g)a,数据集,f:因子集,g:调用函数【ifelse(test, yes或1, no或0),变为因子】,tapply是按因子集分组,再按组使用函数;
    • split实现索引功能,有因子集返回相应位置的元素;

列表

  • 描述:列表是一些对象的有序集合,可以包含任何对象,因此最为复杂;用list()创建,列表中各组件的名称叫做标签,标签可以简写,无歧义都能被识别;
  • 操作:lapply()