购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

2.2 矩阵的拼接

两个或者两个以上的矩阵按一定的方向进行连接,生成新的矩阵就是矩阵的拼接。矩阵的拼接是一种创建矩阵的特殊方法,区别在于基础元素是原始矩阵,目标是新的合并矩阵。

2.2.1 基本拼接

矩阵的拼接有按照水平方向拼接和按照垂直方向拼接两种。例如,对矩阵 A B 分别按这两种方式进行拼接,拼接表达式如下:

【例2-4】分别将3阶魔方矩阵和3阶单位矩阵在水平方向、垂直方向上拼接成为一个新的矩阵。

clear all;
c= magic(3)                     % 3阶魔方矩阵
d = eye (3)                     % 3阶单位矩阵
E =[c,d]                        % 水平方向拼接
F =[c;d]                        % 垂直方向拼接

运行结果如下:

c =
     8     1     6
     3     5     7
     4     9     2
d =
     1     0     0
     0     1     0
     0     0     1
E =
     8     1     6     1     0     0
     3     5     7     0     1     0
     4     9     2     0     0     1
F =
     8     1     6
     3     5     7
     4     9     2
     1     0     0
     0     1     0
     0     0     1

2.2.2 拼接函数

在MATLAB中,除了使用矩阵拼接符“[]”拼接矩阵外,还可以使用矩阵拼接函数来拼接矩阵,具体的函数和功能如表2-2所示。

表2-2 MATLAB中的矩阵拼接函数

036-01

【例2-5】利用cat函数在不同方向上拼接矩阵。

clear all;
A1=[1 2;3 4]
A2=[5 6;7 8]
C1=cat(1,A1,A2)                 % 垂直拼接
C2=cat(2,A1,A2)                 % 水平拼接
C3=cat(3,A1,A2)                 % 三维数组

运行结果如下: 5Ip83qGy+/W4+sYO286vJlNCHAyyjZSRnGDlqwF2CkFFHVDNvaqLjkuDLAfjJgeY

A1 =
     1     2
     3     4
A2 =
     5     6
     7     8
C1 =
     1     2
     3     4
     5     6
     7     8
C2 =
     1     2     5     6
     3     4     7     8
C3(:,:,1) =
     1     2
     3     4
C3(:,:,2) =
     5     6
     7     8
点击中间区域
呼出菜单
上一章
目录
下一章
×