当前位置: 首页 > news >正文

MATLAB矩阵下标引用

        在MATLAB中,普通的二维数组元素的数字索引分为双下标索引和单下标索引。双下标索引是通过一个二元数组对来对应元素在矩阵中的行列位置,例如A(2,3)表示矩阵A中第2行第3列的元素。单下标索引的方式是采用列元素优先的原则,对m行n列的矩阵按列排序进行重组,成为一维数组,再取新的一维数组中元素优先位置对应的值作为元素在原矩阵中单下标,例如对于4✖4的矩阵,A(7)表示矩阵A中第3行第2列的元素,而A(13)表示矩阵A中第1行第4列的元素。

        1、矩阵下标访问单个矩阵元素

        常用的矩阵索引表达式如下所示。

矩阵的索引表达式
索引表达式函数功能
A(1)将二维矩阵A重组为一维数组,返回数组中第一个元素
A(:,j)返回二维矩阵A中第j列列向量
A(i,;)返回二维矩阵A中第i行行向量
A(:,j:k)返回由二维矩阵A中的第j列到第k列列向量组成的子矩阵
A(i:k,:)返回由二维矩阵A中的第i行到第k行行向量组成的子矩阵

A(i:k,j:l)

返回由二维矩阵A中的第i行到第k行行向量和第j列到第l列列向量的交集组成的子矩阵
A(;)将矩阵A中每列合并成一个长的列向量
A(j:k)返回一个行向量,其元素为A(:)中的第j个元素到第k个元素
A([j1j2...])返回一个行向量,其中元素为A(:)中的第j1、j2元素
A(;,[j1j2...])

返回矩阵A的第j1列、第j2列等的列向量

A([i1i2...]:,)返回矩阵A的第i1行、第i2行等的行向量
A([i1i2...],[j1j2...])

返回矩阵第i1行、第i2行等和第j1列、第j2列等的元素

        2、线性引用矩阵元素

        矩阵某一元素的单下标索引值和双下标索引值之间,可以通过MATLAB内部函数进行转换,其句法形式为:

        

IND = sub2ind(siz,i,j)

        其功能为将双下标索引值变为单下标索引值,其中siz是一个包含两个元素的数组,代表了转换矩阵的行列数将双下标索引值转换为单下标索引值,其中siz是一个包含两个元素的数组,代表转换矩阵的行列数,一般可以直接用size(A)表示,i和j分别是双下表索引中的行、列值,IND是转换后的单下标索引值。

[I J] = ind2sub(siz,ind)

        其功能为将单下标索引值转换为双下标索引值,各变量意义同上。

        3、访问多个矩阵元素

        设A=magic(4),如果需要计算第4列元素的和,按照前面介绍的方法可以用以下式来实现:

A(1,4)+A(2,4)+A(3,4)+A(4,4)

        在下标表达式里,可以用冒号来表示矩阵的多个元素。例如,A(1:k,j)表示矩阵第j列的前k个元素。利用冒号,第四列的元素和可以更简单的表达,代码设置如下:

sum(A(1:4,4))

        在MATLAB中提供了一个关键字end,用于表示该维中的最后一个元素,所以上式还可以写为:

sum(A(:,end))

        实际上还可以用冒号表示非相邻的多个元素,例如下面的代码:

A=1:10
B=A(1:3:10)

        由上述语句可以得到如下输出结果:


A =1     2     3     4     5     6     7     8     9    10B =1     4     7    10


http://www.mrgr.cn/news/30654.html

相关文章:

  • 【开源免费】基于SpringBoot+Vue.JS高校学科竞赛平台(JAVA毕业设计)
  • 接口测试整体框架
  • Nop平台的定位及发展规划
  • 面试必修技能之鸿蒙并发编程及其优化策略
  • 蓝桥杯每日真题 - 第7天
  • 第三十三篇——用变化的眼光看最大值和最小值
  • 图数据库之HugeGraph
  • 深度学习笔记(8)预训练模型
  • Linux文件系统
  • 8.1差分边缘检测
  • 介绍几个AI生成视频的工具
  • 新发布的OpenAI o1生成式AI模型在强化学习方面迈出了重要的一步
  • iptables 基础示例
  • 电脑维修的基本原则
  • AI助力智慧农田作物病虫害监测,基于YOLOv8全系列【n/s/m/l/x】参数模型开发构建花田作物种植场景下棉花作物常见病虫害检测识别系统
  • 【ShuQiHere】 从逻辑门到组合电路:构建数字系统的核心
  • Python习题 192:编写一个猜单词游戏
  • 算法打卡 Day34(贪心算法)-分发饼干 + 摆动序列 + 最大子序和
  • 链式栈讲解
  • id 命令:输出用户的UID、GID和属组
  • C语言中的一些小知识(二)
  • 代码随想录Day50|图论Part01,leetcode题目:98. 所有可达路径
  • 科创孵化昌平,创新创业求发展
  • 专题六_模拟_算法详细总结
  • 计算机毕业设计Python+Flask微博情感分析 微博舆情预测 微博爬虫 微博大数据 舆情分析系统 大数据毕业设计 NLP文本分类 机器学习 深度学习 AI
  • 结构体易忘点