矩阵是按列储存的,也是说先储存第一列,再按顺序储存第二列,并依此类推。(当给定的行数和列数之积大于给定的向量中元素的个数时,系统会采取循环补齐方式来对矩阵进行填充),向量的赋值可以表示删除某行或者某个值。
> matrix(c(1,2,3,4,5,6),nrow = 2, ncol = 3)
[,1] [,2] [,3]
[1,] 1 3 5
[2,] 2 4 6
> m <- matrix(c(1,2,3,4,5,6),nrow = 2, ncol = 3)
> m[1,2] # 第一行第二列的对应元素
[1] 3
> m[1,2] <- 3 # 反之亦可以赋值
> m[c(1,2),] <- matrix(c(0,9,0,9,0,9), nrow = 2) # 也可以将行或者列赋值
> m
[,1] [,2] [,3]
[1,] 0 0 0
[2,] 9 9 9
还可以给矩阵的行和列进行命名,并以行名和列名作为访问的索引。
> record <- matrix(c(98,75,86,92,78,95), nrow = 2)
> colnames(record) <- c("Math", "Physics", "Chemistry")
> rownames(record) <- c("John", "Mary")
> record
Math Physics Chemistry
John 98 86 78
Mary 75 92 95
> record["John", "Physics"]
[1] 86