【Matlab】【M文件编程】杂记1:cat 连接数组

    xiaoxiao2022-07-14  202

    1、连接两个阵列

    CAT(DIM,A,B)  连接数组A和B,DIM 表示维度(dimension)

    举例:  CAT(2,A,B) 可以得到  [A,B]. 横向拼接。

     CAT(1,A,B) 可以得到  [A;B]. 纵向拼接。

    CAT(3,A,B) 可以理解为3维空间叠加拼接。

    CAT(4,A,B) 可以理解为4维空间叠加拼接,这里的示意图无法给出,原因是我想象不出怎么画。

    也可以是更高维。

     

    2、连接多个阵列

     B = CAT(DIM,A1,A2,A3,A4,...)  表示 沿着维度方向,连接多个阵列(A1,A2,A3,A4,...)。

     

    CAT(DIM,C{:}) 或者 CAT(DIM,C.FIELD) 都表示,将数字矩阵的单元或者结构体数组 进行连接。形成单个矩阵。

     

    3、举例

     

    a = magic(3); % 生成3*3的矩阵,矩阵满足横向,纵向,对角线之和都相等。(参考下方图片) b = pascal(3); % 帕斯卡矩阵:由杨辉三角形表组成的矩阵称为帕斯卡(Pascal)矩阵。(参考下方图片) c = cat(4,a,b)  %产生3×3×1×2的结果       s = {a b};       for i=1:length(s),          siz{i} = size(s{i});       end       sizes = cat(1,siz{:}); %生成一个2乘2的大小向量数组。

     

     

     

    最新回复(0)