基本概念和公式简述

size(A)函数:

得到的是由两个数组成的一个行向量,第一个数是矩阵A的行,第二个数为矩阵A的列

序号:(x,y)

下标:通过计算得到的一个数

下标计算公式:(y-1)*m+x

*公式对应的条件是已知矩阵A为m*n,求序号为(x,y)所对应数的下标

已知序号求下标——sub2ind函数(需要已知矩阵)

格式:D=sub2ind(S,I,J)

当只对一个数求下标:

未知量 已知量
D S I J
要求的下标值

矩阵的行数和列数

所组成的向量

要求数的行号 要求数的列号

例:

已知矩阵A=[4 5 6] ,要求序号为(1,2)数的下标

我们先自己计算一下 (2-1)*1+1=2

matlab验算为

>> A=[4,5,6];
>> D=sub2ind(size(A),1,2)

D =

2

当需要对多个数求下标:

未知量 已知量
D S I J
要求的下标值

矩阵的行数和列数

所组成的向量

所有要求数的行号所组成的矩阵 所有要求数的列号所组成的矩阵

例1:

已知矩阵A= 4 5 6

                    1 2 3 ,要求序号为(1,2)、(2,2)、(2,1)、(2,3)的下标

我们先自己计算一下

(2-1)*2+1=3

(2-1)*2+2=4

(1-1)*2+2=2

(3-1)*2+2=6

用matlab验证

>> A=[4:6;1:3];
>> D=sub2ind(size(A),[1,2;2,2],[2,2;1,3])

%所有的行数为1、2、2、2 组成行数矩阵[1,2;2,2]

%所有的列数为2、2、1、3 组成列数矩阵[2,2;1,3]

%行数矩阵和列数矩阵依此对应组成要求的序号(1和2组合、2和2组合、2和1组合、2和3组合)

D =

3     4
     2     6

例2:

已知矩阵A= 4 5 6,要求序号为(1,1)、(1,2)、(1,3)所对应数的下标

>> A=[4,5,6];

>> D=sub2ind(size(A),[1,1,1],[1,2,3])

D =

1     2     3

已知序号求下标——ind2sub函数(不需要已知矩阵)

格式:[I,J]=ind2sub(S,D)

未知量 已知量
I J S D
所有要求数的行号 所有要求数的列号 矩阵的行号和列号所组成的矩阵 数的下标

例:

已知5*5的矩阵,要求下标为1、3、5所对应的数的序号(x1,y1)、(x2,y2)、(x3,y3)

我们先来列一下公式

(y1-1)*5+x1=1

(y2-1)*5+x2=3

(y3-1)*5+x3=5

用matlab来算一下

>> [I,J]=ind2sub([5,5],[1,3,5])

I =

1     3     5

J =

1     1     1

I依次对应x1、x2、x3

J依次对应y1、y2、y3

所以结果为(1,1)、(3,1)、(5,1),可以代入刚刚摆好的公式验算一下是否正确

MATLAB | 矩阵元素引用之求下标或序号(sub2ind、ind2sub函数使用)相关推荐

  1. matlab 矩阵元素求和、求均值(期望)和均方差

    matlab中矩阵元素求和.求期望和均方差 在matlab中求一个矩阵中元素的和可以自己编写for循环来完成,这样比较方便,想求那些数据的和都可以做到,然而效率比较低,如果数据量大程序会跑好长时间.所 ...

  2. 矩阵期望 matlab,matlab 矩阵元素求和、求均值(期望)和均方差

    matlab中矩阵元素求和.求期望和均方差 在matlab中求一个矩阵中元素的和可以自己编写for循环来完成,这样比较方便,想求那些数据的和都可以做到,然而效率比较低,如果数据量大程序会跑好长时间.所 ...

  3. 1.7 matlab矩阵元素的引用(可通过下标和序号引用)

    例1 a = [1 2 3;4 5 6] a = 1 2 34 5 6 给矩阵a的第三行第五列赋值200,其他位置元素自动补为0 a(3,5)=20 a = 1 2 3 0 04 5 6 0 00 0 ...

  4. matlab矩阵定义、矩阵元素引用、矩阵操作

    矩阵定义 直接输入法 A=[1 2 3;4 5 6;7 8 9] 矩阵用方括号 "[ ]" 括起 矩阵同一行中的元素之间用 空格 或 逗号 分隔 矩阵行与行之间用 分号 分开 直接 ...

  5. 矩阵期望 matlab,matlab中矩阵元素求和、求期望和均方差

    在matlab中求一个矩阵中元素的和可以自己编写for循环来完成,这样比较方便,想求那些数据的和都可以做到,然而效率比较低,如果数据量大程序会跑好长时间.所以我们可以转而用matlab提供的sum函数 ...

  6. matlab矩阵指定行最大值,求Matlab程序:在2行矩阵中,如何求第1行最大值和第2行相应的最大,请问,如何在MATLAB中编写程序实现求两矩阵A*B,A.*...

    导航:网站首页 > 求Matlab程序:在2行矩阵中,如何求第1行最大值和第2行相应的最大,请问,如何在MATLAB中编写程序实现求两矩阵A*B,A.* 求Matlab程序:在2行矩阵中,如何求 ...

  7. Matlab 矩阵元素选取方法

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言 1.简单切片 2.根据条件选取 3.根据下标选取对应元素 1)简介 2)二维选取 3)多维选取 总结 前言 提示:这里 ...

  8. MATLAB矩阵元素的处理

    1.矩阵元素的取整 向下取整:floor() 向上取整:ceil() 四舍五入取整:round() 截尾取整:fix() 去掉小数部分 例2.3-5 A = [2.3,2.7;-2.3,-2.7] A ...

  9. matlab取矩阵元素的模,Matlab矩阵元素提取

    有一个1*41的矩阵,矩阵的每个元素都是4*4的矩阵,如何提取4*4的矩阵中的特定元素? 例如提取T(1)矩阵中的第一行第一列的元素. T(1) = 1         0         0     ...

最新文章

  1. linux常用命令1
  2. VS2019 开发第一个Windows驱动程序
  3. 有程序在记录你的键盘输入_12个用Java编写基础小程序amp;经典案例(收藏)
  4. mysql 分库分表 ~ 柔性事务
  5. java如何对一个表达式开根号_作为一个零基础的新手,如何系统的自学Java和JavaEE开发技术?...
  6. MainService流程
  7. 【ORACLE 高可用】ORACLE STREAM 基于用户的流复制配置 案例
  8. Nagios LDAP用户pager被清空问题
  9. 管理者和领导者的区别_如何赢得领导者的尊重
  10. WPF:Hyperlink如何绑定数据
  11. 利用cloudera manager搭建Hadoop集群
  12. android ntp服务器配置
  13. 爱粤语软件:普通话和粤语转换
  14. 【图书推荐】中国首部敏捷开发案例集《敏捷开发一千零一夜》
  15. r library car_医学统计与R语言:双因素重复测量方差分析(Twoway repeated measures ANOVA)...
  16. 基于ssm与maven,使用easyui--tree生成类似部门管理树形结构图
  17. 程序员被人喜欢的13点原因
  18. Android 九宫格图片展示的实现
  19. gem意思_GEM什么意思
  20. 2021年山东省安全员C证考试资料及山东省安全员C证找解析

热门文章

  1. PLSQL连接Oracle:ORA-12154: TNS: 无法解析指定的连接标识符
  2. 蓝桥杯 算法训练 Tennis Rackets (50%通过)
  3. 开发 iOS 的 VOIP 客户端
  4. Mac-修改MySQL密码
  5. 什么是接口测试和功能测试?
  6. 关于狄利克雷分布的理解
  7. 【小白】Open-CV 学习笔记 -5.5.2 离散傅里叶变换相关函数详解
  8. 伟景行Citymaker高亮图层的内元素CSharp
  9. 通过过滤器Filter来完成url访问权限限制
  10. Netbeans 高分屏 设置