MATLAB知识点:矩阵的拼接和重复
创始人
2024-12-27 14:38:50
0

​讲解视频:可以在bilibili搜索《MATLAB教程新手入门篇——数学建模清风主讲》。​

MATLAB教程新手入门篇(数学建模清风主讲,适合零基础同学观看)_哔哩哔哩_bilibili


节选自第3章 3.3.4 矩阵的拼接和重复

有时候我们需要对多个矩阵进行拼接,变成一个大的矩阵。根据矩阵拼接的方向,我们可以分为横向(水平)拼接和纵向(垂直)拼接,如下图所示:

如上图所示:横向拼接要求矩阵的行数相同;纵向拼接要求矩阵的列数相同。

在MATLAB中,我们可以使用命令[A, B] 或 [A  B]对矩阵A和B进行横向拼接,也可以使用MATLAB中的内置函数:horzcat(A,B);类似的,我们可以使用命令[A; B]对矩阵A和B进行纵向拼接,也可以使用MATLAB中的内置函数:vertcat(A,B)。

事实上,horzcat和vertcat两个函数来源自cat函数,这里的cat不是猫的意思,而是单词catenate的缩写,可以翻译成连接。

cat函数的用法如下:

命令cat(dim,A,B)表示沿着维度dim方向将矩阵B拼接到矩阵A的末尾。

  • dim = 1时表示沿着行方向从上往下进行拼接,即纵向拼接,因此cat(1,A,B)等价于vertcat(A,B);

  • dim = 2时表示沿着列方向从左自右进行拼接,即横向拼接,因此cat(2,A,B)等价于horzcat(A,B)。

(horzcat函数中的horz取自英文单词horizontal,表示水平的意思;vertcat函数中的vert取自英文单词vertical,表示竖直的意思)

总结:若A和B的行数相同,那么使用[A, B]、[A  B]、horzcat(A,B)以及cat(2,A,B)都能将A和B横向拼接成一个大的矩阵;若A和B的列数相同,那么使用[A; B]、vertcat(A,B)以及cat(1,A,B)都能将A和B纵向拼接成一个大的矩阵。

下面举几个例子:

(1)    横向拼接的例子

(2)    纵向拼接的例子

(3)    拼接时维度不一致导致的报错

如果横向拼接时矩阵的行数不相同,或者纵向拼接矩阵的列数不相同,那么MATLAB就会报错。

注意,如果要拼接的矩阵的个数大于2,也能使用上面的方法进行拼接,请看下面的例子:

除了对矩阵进行拼接外,有时候我们需要对同一个矩阵进行重复的堆叠。如下图所示,我们将矩阵A重复堆叠m×n次,得到一个新的矩阵:

在MATLAB中,对同一个矩阵进行重复的堆叠的代码为repmat(A,m,n)

(如何记住repmat这个函数?  repeat表示重复,matrix表示矩阵)

我们举两个例子:

除了对整个矩阵进行重复的堆叠外,MATLAB还可以对向量或者矩阵中的元素进行重复,使用到的函数是repelem(如何记住repelem: repeat重复 + element元素)

repelem函数有两种用法:

(1)    重复向量v中的元素:repelem(v, n)

当n为一个正整数时,表示把向量v中的每一个元素都重复n次;n也可以为一个向量,其长度必须和v的长度相同,它可以将v中第i个位置的元素v(i)重复n(i)次,其中n(i)表示n中第i个位置的元素。

(2)    重复矩阵A中的元素:repelem(A,m,n)

m和n分别表示沿着行方向(从上至下)以及沿着列方向(从左至右)将矩阵元素重复的次数,这里的m和n可以是正整数,也可以是向量。如果m是向量,则m的长度要和矩阵A的行数相同;如果n是向量,则n的长度要和矩阵A的列数相同。

相关内容

热门资讯

揭秘真相!微信小程序家乡大二解... 揭秘真相!微信小程序家乡大二解码,xpoker辅助助手,攻略教程(有挂总结);致您一封信;亲爱微信小...
推荐一款!天天微友第三方辅助软... 推荐一款!天天微友第三方辅助软件下载,hhpoker辅助靠谱吗,透明挂教程(了解有挂);1、不需要A...
一分钟快速了解!牵手游戏辅助器... 您好:牵手游戏辅助器这款游戏可以开挂的,确实是有挂的,很多玩家在这款游戏中打牌都会发现很多用户的牌特...
一分钟了解!广东雀神祈福真的有... 一分钟了解!广东雀神祈福真的有用吗,wepoker好友房开挂,必赢教程(真的有挂)是一款可以让一直输...
玩家必看攻略!超级三加一辅助工... 玩家必看攻略!超级三加一辅助工具安装,德普之星私人局透视,必备教程(确实有挂);AI辅助机器人普及解...
推荐十款!钱柜手游辅助,we ... 推荐十款!钱柜手游辅助,we poker辅助器v3.3,2025新版教程(有挂教程);亲真的是有正版...
记者揭秘!手机辅助脚本工具,w... 记者揭秘!手机辅助脚本工具,wpk辅助器是真的吗,新2025教程(有挂功能);一、手机辅助脚本工具A...
玩家实测!小程序牵手跑得有辅助... 玩家实测!小程序牵手跑得有辅助器,pokernow辅助工具,2025新版(有挂细节);超受欢迎的小程...
重大科普!雀神麻将辅助透视,w... 重大科普!雀神麻将辅助透视,wepoker破解游戏盒子,新版2025教程(有挂技巧);小薇(透视辅助...
揭秘几款!乐酷辅助,wepok... 揭秘几款!乐酷辅助,wepoker底牌透视,技巧教程(存在有挂);AI辅助机器人普及解说快速成为一个...