R-矩阵运算
> array(c(10,20,30,40),dim=c(2,2))->a
> a
???? [,1] [,2]
[1,]?? 10?? 30
[2,]?? 20?? 40
行列式
> det(a)
[1] -200
转置运算
> t(a)
???? [,1] [,2]
[1,]?? 10?? 20
[2,]?? 30?? 40
向量内积(点乘)? a.b=x1*y1+x2*y2???? 其中a(x1,x2)? b(y1,y2)?? 结果是标量? 一个数值
> x<-1:2
> y<-3:4
> x %*% y
???? [,1]
[1,]?? 11
上面是向量的,矩阵的结果是:
> a
???? [,1] [,2]
[1,]?? 10?? 30
[2,]?? 20?? 40
> b
???? [,1] [,2]
[1,]? 100? 300
[2,]? 200? 400
> a %*% b
????? [,1]? [,2]
[1,]? 7000 15000
[2,] 10000 22000
>
上面是矩阵相乘,它只有在第一个矩阵的列数(column)和第二个矩阵的行数(row)相同时才有定义。一般单指矩阵乘积时,指的便是一般矩阵乘积。若A为m×n矩阵,B为n×p矩阵,则他们的乘积AB(有时记做A B)会是一个m×p矩阵。其乘积矩阵的元素如下面式子得出:

左边的图表示出要如何计算AB的(1,2)和(3,3)元素,当A是个4×2矩阵和B是个2×3矩阵时。分别来自两个矩阵的元素都依箭头方向而两两配对,把每一对中的两个元素相乘,再把这些乘积加总起来,最后得到的值即为箭头相交位置的值。


下面这个是矩阵每个元素的乘法
> a*b
???? [,1]? [,2]
[1,] 1000? 9000
[2,] 4000 16000
>
向量外积(叉乘)? a×b=|a|*|b|*sin<a,b>??????? 结果是一个向量(矢量)
?
向量的外积是矩阵的克罗内克积的特殊情况。
给定
列向量
和
行向量
,它们的外积
被定义为
矩阵
,结果出自

这里的张量积就是向量的乘法。
使用坐标:

> x %o% y
???? [,1] [,2]
[1,]??? 3??? 4
[2,]??? 6??? 8
> x
[1] 1 2
> y
[1] 3 4
>
> a %o% b
, , 1, 1
???? [,1] [,2]
[1,] 1000 3000
[2,] 2000 4000
, , 2, 1
???? [,1] [,2]
[1,] 2000 6000
[2,] 4000 8000
, , 1, 2
???? [,1]? [,2]
[1,] 3000? 9000
[2,] 6000 12000
, , 2, 2
???? [,1]? [,2]
[1,] 4000 12000
[2,] 8000 16000
>
?