[已答复] matlab的cat函数

[复制链接]
wxw0827 发表于 2009-10-16 11:06:21
matlab的cat函数
cat:用来联结数组
用法:C = cat(dim, A, B)       按dim来联结A和B两个数组。
          C = cat(dim, A1, A2, A3, ...)    按dim联结所有输入的数组。
          EXP: 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 =

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

     8     1     6     1     1     1
     3     5     7     1     2     3
     4     9     2     1     3     6
>> c = cat(3,a,b)
c(:,:,1) =

     8     1     6
     3     5     7
     4     9     2
c(:,:,2) =

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

     8     1     6
     3     5     7
     4     9     2
c(:,:,1,2) =

     1     1     1
     1     2     3
     1     3     6

12 条回复


andysun1986 发表于 2010-3-18 22:05:38
好,收藏了
:kiss:

qingteng 发表于 2010-5-17 15:56:00
学习了,hehe

moyuxin11 发表于 2010-11-24 14:53:41
学习了,呵呵,谢谢

fengde2010 发表于 2010-11-24 21:29:44
额,呵呵,新手,对我来说还是有点高深:D

夜の风 发表于 2012-3-12 10:19:40
楼主好,我有很多数据,每一个都写在语句中的话,很费时,请问不知能否实现循环或者有没有命令能将一个结构语句中所有的cell合并成一个矩阵?

动以其时 发表于 2012-4-16 10:41:44
谢谢lz!
现在懂了

emputer 发表于 2012-7-25 15:36:45
学习了,感觉还是有点不懂,特别是dim=3时。

dezon 发表于 2013-3-21 14:19:14
能不能把是个矩阵拼成一个矩阵?

hcq@@ 发表于 2013-8-9 09:23:07
感觉楼主分享 果断收藏 对于4维的合并 原来晕晕的

wddn1206 发表于 2014-3-17 09:07:58
:lol正好要用它了

火星上的 发表于 2015-10-23 20:59:39
懂了 谢谢

BROCCOLI_Lian 发表于 2017-9-3 08:19:26
:)有用,很是收益,谢谢了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

相关帖子
相关文章
热门教程
站长推荐
快速回复 返回顶部 返回列表