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的列数相同。

相关内容

热门资讯

推荐十款!亚盈开挂功能方法,亚... 推荐十款!亚盈开挂功能方法,亚盈真是存在有开挂方法1、完成亚盈辅助器v3.3的残局,帮助玩家取得所有...
科技分享!五龙捕鱼开挂功能神器... 科技分享!五龙捕鱼开挂功能神器,五龙捕鱼本来有开挂神器1、在五龙捕鱼插件功能辅助器技巧中,中转单元十...
玩家必备科普!新九天辅助器功能... 玩家必备科普!新九天辅助器功能方法,新九天其实存在有辅助器方法1、新九天辅助器安装包、新九天辅助器2...
教程攻略!永乐透视功能方法,永... 教程攻略!永乐透视功能方法,永乐竟然有透视方法1、永乐辅助器安装包、永乐辅助器2、分享自己喜欢的永乐...
玩家必备科普!朋友安徽麻将透视... 玩家必备科普!朋友安徽麻将透视挂功能神器,朋友安徽麻将好像有透视挂神器1、每一步都需要思考,不同水平...
最新通报!东游三张牌辅助器功能... 最新通报!东游三张牌辅助器功能方法,东游三张牌本来有辅助器方法1、游戏颠覆性的策略玩法,独创攻略技巧...
玩家必看攻略!捕鱼联盟辅助器功... 玩家必看攻略!捕鱼联盟辅助器功能技巧,捕鱼联盟原来存在有辅助器技巧1、不需要AI权限,帮助你快速的进...
每日必看推荐!酷乐游戏透视挂功... 每日必看推荐!酷乐游戏透视挂功能脚本,酷乐游戏确实是有透视挂脚本1、下载好酷乐游戏透视辅助下载之后点...
科技介绍!游游棋牌开挂功能攻略... 科技介绍!游游棋牌开挂功能攻略,游游棋牌竟然真的是有开挂攻略游游棋牌辅助器是一种具有地方特色的麻将游...
今日头条!天酷大厅开挂功能工具... 今日头条!天酷大厅开挂功能工具,天酷大厅确实是真的有开挂工具天酷大厅能透视中分为三种模型:天酷大厅模...