2.5 多维数组和矩阵
1.数组(array)带多个下标的相同的元素的集合,常用的是数值型的数组如矩阵,也可以其他类型(如字符串,逻辑型,复数型)
数组----维数向量(dim属性),维数向量是一个元素取正整数值得向量,其长度是数组的维数。
下标下界总是为1.
1.将向量定义成数组
向量只有定义了维数向量(dim属性)后才能被看作是数组。
z<-1:12
dim(z)<-c(3,4);z
z[0] #没有属性值
z[1] #说明下标从1开始。
注意:矩阵的元素是按列存放。也可以定义一维数组
dim(z)<-12;z
2.array()函数构造多维数组
R软件可以用array()函数直接构造数组:
array(data = NA,dim = length(data),dimnames = NULL)
例:默认的列排,下面生成4*5矩阵
x<-array(1:20,dim=c(4,5));x
下属方法常用于矩阵的初始化
x<-array(0,dim=c(3,4,2));x
3.用matrix()函数构造矩阵
maxtrix()是构造矩阵(二维数组)的函数,构造形式如下:
martrix(data=NA,nrow=1,ncol=1,byrow=FALSE,dimnames=NULL)
数据默认按列排序
例如:建立一个3*5矩阵,数据按行放置。
A<-matrix(1:15,nrow = 3,ncol = 5,byrow = TRUE);A
注意:下面两种方式与前面格式等价
B<-matrix(1:15,nrow=3,byrow=TRUE);B
c<-matrix(1:15,ncol=5,byrow=TRUE);c