一.基本概念
1.具有行数和列数的一个规则的一个二维表
每一行代表一条记录
每一列代表一个属性
eg:
二.矩阵创建
1.mat<-matrix(c(1:20),nrow=4,ncol=5)
指定数据内容,指定行数,指定列
> mat2<-matrix(c(1:20),nrow = 4,ncol = 5)
> mat2
[,1] [,2] [,3] [,4] [,5]
[1,] 1 5 9 13 17
[2,] 2 6 10 14 18
[3,] 3 7 11 15 19
[4,] 4 8 12 16 20
>
行数列数都可以省略
> mat3<-matrix(c(1:20),nrow = 4)
> mat3
[,1] [,2] [,3] [,4] [,5]
[1,] 1 5 9 13 17
[2,] 2 6 10 14 18
[3,] 3 7 11 15 19
[4,] 4 8 12 16 20
>
> mat4<-matrix(c(1:20),ncol=5)
> mat4
[,1] [,2] [,3] [,4] [,5]
[1,] 1 5 9 13 17
[2,] 2 6 10 14 18
[3,] 3 7 11 15 19
[4,] 4 8 12 16 20
>
2.维数的获取
>
> mat<-matrix(c(1:12), nrow = 3, ncol = 4)
> mat
[,1] [,2] [,3] [,4]
[1,] 1 4 7 10
[2,] 2 5 8 11
[3,] 3 6 9 12
>
三.矩阵的运算
1.矩阵与标量相乘 *
2.矩阵与矩阵相乘 %*%
条件:满足矩阵相乘的要求,左边矩阵的行数等于右边矩阵的列数,不满足条件会报错
四.矩阵索引
给行列取名
1.提取单个元素
2.提取行
3.提取列
4.提取部分行列
五.元素筛选
1.逻辑判断:给出逻辑值true或者false
eg:选出语文成绩 大于等于5的成绩
2.which:给出满足条件的数据的位置
六.apply
apply(mat,1,f)
apply(mat,2,f)
要操作的矩阵对象,1/2(1为对行操作,2为对列操作),