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

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的大小向量数组。

猜你喜欢

转载自blog.csdn.net/Kshine2017/article/details/90489538