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

2.2 矩阵的拼接

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

2.2.1 基本拼接

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

水平方向拼接:C=[A B]或C=[A,B]。

垂直方向拼接:C=[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中矩阵拼接函数

续表

【例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)%三维数组

运行结果如下:

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 25b/+umCOs3g18x9WA+54Zwb7B4h/7HiQoV96Y71+muoTvIrkPUQFnIcN37JhvWc

点击中间区域
呼出菜单
上一章
目录
下一章
×