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)相同时才有定义。一般单指矩阵乘积时,指的便是一般矩阵乘积。若Am×n矩阵,Bn×p矩阵,则他们的乘积AB(有时记做A · B)会是一个m×p矩阵。其乘积矩阵的元素如下面式子得出:

(AB)_{ij} = \sum_{r=1}^n a_{ir}b_{rj} = a_{i1}b_{1j} + a_{i2}b_{2j} + \cdots + a_{in}b_{nj}.

由定义直接计算

Matrix multiplication diagram.PNG

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

(AB)_{1,2} = \sum_{r=1}^2 a_{1,r}b_{r,2} = a_{1,1}b_{1,2}+a_{1,2}b_{2,2}
(AB)_{3,3} = \sum_{r=1}^2 a_{3,r}b_{r,3} = a_{3,1}b_{1,3}+a_{3,2}b_{2,3}

下面这个是矩阵每个元素的乘法

> a*b
     [,1]  [,2]
[1,] 1000  9000
[2,] 4000 16000
>

向量外积(叉乘)  a×b=|a|*|b|*sin<a,b>        结果是一个向量(矢量)

 

向量的外积是矩阵的克罗内克积的特殊情况。

给定 m\times 1 列向量 \mathbf{u}1 \times n 行向量 \mathbf{v},它们的外积 \mathbf{u} \otimes \mathbf{v} 被定义为 m\times n 矩阵 \mathbf{A},结果出自

\mathbf{u} \otimes \mathbf{v} = \mathbf{A} = \mathbf{u} \mathbf{v}

这里的张量积就是向量的乘法。

使用坐标:

\begin{bmatrix}b_1 \\ b_2 \\ b_3 \\ b_4\end{bmatrix}  \otimes   \begin{bmatrix}a_1 & a_2 & a_3\end{bmatrix} = \begin{bmatrix}a_1b_1 & a_2b_1 & a_3b_1 \\ a_1b_2 & a_2b_2 & a_3b_2 \\ a_1b_3 & a_2b_3 & a_3b_3 \\ a_1b_4 & a_2b_4 & a_3b_4\end{bmatrix}

> 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

>

 

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值