MATLAB知识点:矩阵的拼接和重复

这篇具有很好参考价值的文章主要介绍了MATLAB知识点:矩阵的拼接和重复。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

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

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


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

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

MATLAB知识点:矩阵的拼接和重复,MATLAB知识点详解,数学建模,matlab

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

在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)    横向拼接的例子

MATLAB知识点:矩阵的拼接和重复,MATLAB知识点详解,数学建模,matlab

(2)    纵向拼接的例子

MATLAB知识点:矩阵的拼接和重复,MATLAB知识点详解,数学建模,matlab

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

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

MATLAB知识点:矩阵的拼接和重复,MATLAB知识点详解,数学建模,matlab

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

MATLAB知识点:矩阵的拼接和重复,MATLAB知识点详解,数学建模,matlab

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

MATLAB知识点:矩阵的拼接和重复,MATLAB知识点详解,数学建模,matlab

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

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

我们举两个例子:

MATLAB知识点:矩阵的拼接和重复,MATLAB知识点详解,数学建模,matlab

除了对整个矩阵进行重复的堆叠外,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个位置的元素。

MATLAB知识点:矩阵的拼接和重复,MATLAB知识点详解,数学建模,matlab

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

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

MATLAB知识点:矩阵的拼接和重复,MATLAB知识点详解,数学建模,matlab文章来源地址https://www.toymoban.com/news/detail-836105.html

到了这里,关于MATLAB知识点:矩阵的拼接和重复的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 数学模型与数学建模(急救版80+)常考知识点(一)

    1.重点基础 clear: 清除内存里的数据   clc:清屏 变量名的第一个字符必须是字母,后面可加字母、数字和下划线的任意组合;变量名有大小区分 A=[1,-2,5,6,-4,9] A =      1    -2     5     6    -4     9 A=[1,-2,5;6,-4,9] A =      1    -2     5      6    -4     9 A=[

    2024年02月03日
    浏览(46)
  • 数学模型与数学建模(急救版80+)常考知识点(二)

    设有随机过程,其中状态空间为  若对任意的正整数,任意 及任意非负整数 ,有                           则称为离散时间的马尔可夫链,简称马尔可夫链或马氏链.其中上式表示的性质为马尔可夫性或无后效性. 无后效性的直观意义是:如果把时刻看作现在,那么 是将

    2024年01月19日
    浏览(42)
  • 数学建模 | 关于随机森林你必须知道的20个知识点

    1. 什么是随机森林?  随机森林是一种集成学习方法,通过构建多棵决策树,并让它们进行投票来提高预测准确性。 2. 随机森林如何避免过拟合?  随机森林通过从训练数据集中随机抽取样本构建决策树来避免过拟合。 3. 构建随机森林需要多少棵决策树?  通常100-500棵决策树就可

    2024年01月22日
    浏览(48)
  • 数学建模 | 关于ARMA模型你必须知道的20个知识点

    1. ARMA模型的含义是什么? ARMA模型综合考虑自回归模型和移动平均模型,使用过去的观测值和误差项的移动平均来预测未来值。 2. ARMA模型的表示方法是什么? ARMA(p,q)模型,p表示自回归模型的阶数,q表示移动平均模型的阶数。 3. ARMA模型的公式是什么? Y_t = c + φ_1Y_{t-1} + ... + φ_pY_{

    2024年02月09日
    浏览(39)
  • matlab相关(4)重复排列&矩阵列的拼接

    例子,比如两次分别从数组[1 2 3 4 5]中取出一个数字出来 A=zeros(5,5); D=zeros(5,10); for i=0:4  A(:,i+1)=[(11:15)+10*i]\\\';  D(:,2*i+(1:2))=num2str(A(:,i+1))-\\\'0\\\'; end A D B=reshape(A,1,[ ]).\\\' B=reshape(A\\\',1,[])  

    2024年02月14日
    浏览(37)
  • 数学建模 | 关于季节性ARIMA模型你必须知道的20个知识点

    1. SARIMA模型的含义是什么? SARIMA模型是ARIMA模型的扩展,可以对存在季节性周期变化的时间序列进行建模和预测。 2. SARIMA模型的表示方法是什么?  SARIMA(p,d,q)(P,D,Q)s模型,s表示季节性周期。 3. SARIMA模型的参数有哪些?  同ARIMA模型,还包括季节性周期s和季节性自回归模型/移动平均模

    2024年02月12日
    浏览(39)
  • 分块矩阵知识点整理:

    1.分块方法:横竖线不能拐弯,思想为将矩阵分块看作向量计算 2.标准型         不一定是方的         特殊性:经过分块后会出现单位矩阵和0矩阵 3.分块矩阵的运算:         1.加减乘的运算与向量运算相同 4.分块矩阵求转置:         1.将子块看作普通元素求转置    

    2024年02月01日
    浏览(34)
  • MATLAB知识点:向量元素的引用

    讲解视频:可以在bilibili搜索《MATLAB教程新手入门篇——数学建模清风主讲》。​ MATLAB教程新手入门篇(数学建模清风主讲,适合零基础同学观看)_哔哩哔哩_bilibili 节选自第3章 3.2.2节 对向量元素的引用(即提取向量指定位置的值)有两种情形,分别是提取向量中的单个元素

    2024年02月19日
    浏览(47)
  • MATLAB知识点:median :计算中位数

    ​讲解视频:可以在bilibili搜索《MATLAB教程新手入门篇——数学建模清风主讲》。​ MATLAB教程新手入门篇(数学建模清风主讲,适合零基础同学观看)_哔哩哔哩_bilibili 节选自第3章 3.4.1节 中位数又称中值,我们将数据按从小到大的顺序排列,在排列后的数据中居于中间位置的

    2024年04月11日
    浏览(44)
  • MATLAB知识点:prctile函数(★★★☆☆)计算百分位数

     讲解视频:可以在bilibili搜索《MATLAB教程新手入门篇——数学建模清风主讲》。​ MATLAB教程新手入门篇(数学建模清风主讲,适合零基础同学观看)_哔哩哔哩_bilibili 节选自第3章:课后习题讲解中拓展的函数 在讲解第三章课后习题的过程中,我给大家拓展了一些讲义中没有

    2024年04月26日
    浏览(46)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包