R语言之矩阵操作

浏览: 1389

R语言作为一门统计语言,肯定缺少不了矩阵处理。下面是我参考《R语言与数据挖掘》总结出来以下关于矩阵运算的函数,其中包括矩阵的求和,转置,等。

+, -, * , /矩阵的四则运算,对应位置的元素进行运算要求矩阵的维数必须相同
t()矩阵的行列转置
colSums()分别对矩阵的每一列进行求和
rowSums()分别对矩阵的每一行进行求和
colMeans()分别对矩阵的每一列进行求平均值
rowMeans()分别对矩阵的每一行进行求平均值
det()解方程的行列式
crossprod()解两个矩阵的内积(
outer()解两个矩阵的外积,又叫叉积
%*%矩阵乘法,要求第一个矩阵的列数与行数相同
diag()对矩阵取对角元素,若对象为向量(不管有没有缺失值),则生成以向量为对角元素的对角矩阵
solve()在矩阵可逆的情况下,对矩阵求逆矩阵
eigen()对矩阵求解特征值和特征向量

接下来我们通过一些例子来了解一下这些函数。

#定义两个都是2*2的矩阵 
a<-matrix(c(1:4),ncol=2)
b<-matrix(c(5:8),ncol=2)

其中a,b分别为

> a
[,1] [,2]
[1,] 1 3
[2,] 2 4
> b
[,1] [,2]
[1,] 5 7
[2,] 6 8

#求矩阵的各列平均值
colMeans(a)
[1] 1.5 3.5
#求矩阵a的转置矩阵
t(a)
[,1] [,2]
[1,] 1 2
[2,] 3 4
#矩阵的四则运算
3*a-b+b/a
[,1] [,2]
[1,] 3 4.333333
[2,] 3 6.000000
#方阵求解行列式
det(a)
[1] -2
#矩阵内积
crossprod(a,b)
[,1] [,2]
[1,] 17 23
[2,] 39 53
#注意;crossprod(a,b)等价于t(a)%*%b


    至于其他函数,大家可以自己去试试练习一下。如果有什么错误,还请大家留言批评指出。

R语言的矩阵运算

【长按可复制链接】

链接:http://pan.baidu.com/s/1kVNiNn5

密码:iji8

image.png关注我的微信公众号吧,一起交流学习

推荐 1
本文由 王亨 创作,采用 知识共享署名-相同方式共享 3.0 中国大陆许可协议 进行许可。
转载、引用前需联系作者,并署名作者且注明文章出处。
本站文章版权归原作者及原出处所有 。内容为作者个人观点, 并不代表本站赞同其观点和对其真实性负责。本站是一个个人学习交流的平台,并不用于任何商业目的,如果有任何问题,请及时联系我们,我们将根据著作权人的要求,立即更正或者删除有关内容。本站拥有对此声明的最终解释权。

0 个评论

要回复文章请先登录注册