matlab中的cat函数

cat:用来联结数组

用法:C = cat(dim, A, B)       按dim来联结A和B两个数组。

      C = cat(dim, A1, A2, A3, ...)    按dim联结所有输入的数组。

      e.g.

      a=cat(3,A,B) 左括号后的3表示构造出的矩阵维数;在新的矩阵中第1、2维就是A和B这两个矩阵的行数和列数,第3维是A和B这两个矩阵的矩阵个数,即为2

cat(2, A, B)相当于[A, B];

cat(1, A, B)相当于[A; B].

使用“,”分割列表的语法,cat(dim, C{:})或cat(dim, C.field),这是将包含数据矩阵的cell或结构数组联合为一个数组的方便方式。

例如:

>> A = [1 2; 3 4];

>> B = [5 6; 7 8];

>> A

A =

    1     2

    3     4

>> B

B =

    5     6

    7     8

>> cat(1, A, B) %按列连接(列数相同)

ans =

    1     2

    3     4

    5     6

    7     8

>> cat(2, A, B) %按行连接(行数相同)

ans =

    1     2     5     6

    3     4     7     8

>> cat(3, A, B) %合成效果如下图

ans(:,:,1) =

    1     2

    3     4

ans(:,:,2) =

    5     6

    7     8

 

a = magic(3)
b = pascal(3)
k=1,合并后形如 [a;b],行添加矩阵(要求a,b的列数相等才能合并);

>> c = cat(1,a,b)

c =
           6

           7

           2
           1
           3
           6
k=2,合并后形如[a,b],列添加矩阵(要求a,b的行数相等才能合并)
>> c = cat(2,a,b)
c =
                    1

                    3

                    6
>> c = cat(3,a,b)
c(:,:,1) =
           6

           7

           2
c(:,:,2) =
           1

           3

           6
n维的矩阵合并,要求n-1维维数相等才可以.
>> c = cat(4,a,b)
c(:,:,1,1) =
           6

           7

           2
c(:,:,1,2) =
           1

           3
           6

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值