我是靠谱客的博主 大方发箍,最近开发中收集的这篇文章主要介绍R语言之矩阵操作,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

       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
</pre><pre code_snippet_id="1943999" snippet_file_name="blog_20161023_4_6616005" name="code" class="plain">#求矩阵的各列平均值
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

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


转载请注明原文链接:http://blog.csdn.net/wzgl__wh/article/details/52896673

注:本博客也会发布在个人微信公众平台《跟着菜鸟一起学R语言》,回复 R语言的矩阵运算 即可获取干货

最后

以上就是大方发箍为你收集整理的R语言之矩阵操作的全部内容,希望文章能够帮你解决R语言之矩阵操作所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(53)

评论列表共有 0 条评论

立即
投稿
返回
顶部