【matlab矩阵运算】06、matlab索引:位置索引、线性索引和逻辑索引
官网内容:数组索引
1 位置索引
1.1 (行号,列号)索引
要访问矩阵中的某个元素,需依序指定该元素的行号和列号。
>> AA =1 2 34 5 6>> A(1,2)ans =2
1.2 索引向量
>> A([1 2],1)ans =14
1.3 使用:生成索引向量
:
大大的妙,大大的方便!
>> A=[1 2 3 4 5 6 7 8 9]A =1 2 3 4 5 6 7 8 9>> A(1:5)ans =1 2 3 4 5>> A(1:end)ans =1 2 3 4 5 6 7 8 9>> A(1:2:end)ans =1 3 5 7 9>> A(1:3:end)ans =1 4 7
2 线性索引
虽然 MATLAB 根据定义的大小和形状显示数组,但实际上数组在内存中都存储为单列元素。我们用:
可以看到该单列元素
>> A=[1 2 3;4 5 6]A =1 2 34 5 6>> A(:)ans =142536
因此访问矩阵可以只用单个索引,而不用指定行号、列号两个值。这种索引称为线性索引
>> A(5)ans =3
sub2ind 和 ind2sub 函数可用于在数组的原始索引和线性索引之间进行转换。
例如:计算大小为2*3的A的第一行第三列元素的线性索引ind = sub2ind(sz,row,col)
>> AA =1 2 34 5 6>> ind = sub2ind([2 3],1,3)ind =5
反过来[row,col] = ind2sub(sz,ind)
>> [row,col]=ind2sub([2 3],ind)row =1col =3
线性索引用途:要找矩阵C中的指定几个元素,知道元素的行数和列数,就可以用线性索引。
要求矩阵第x行y列的线性索引公式为:idx=(y-1)*row+x
以下示例要求行数为A,列数为B(A与B一一对应)的矩阵C中元素:
>> AA =1 2>> BB =3 4>> C=magic(4)C =16 2 3 135 11 10 89 7 6 124 14 15 1>> idx=(B-1)*4+Aidx =9 14>> C(idx)ans =3 8
3 逻辑索引
逻辑索引大大的妙,大大的方便!
可以用 >
、<
、==
和 ~=
>> A=A(:)A =142536>> A(A<5)ans =1423
【matlab矩阵运算】06、matlab索引:位置索引、线性索引和逻辑索引相关推荐
- MATLAB(完备)之图像.tif到真彩色图像、索引色图像、灰度图像、 真彩色图像RGB、YIQ图像、HSV图像、YCbCr图像转换代码
I=imread('flower.tif');%读入图片 whos I imfinfo('flower.tif') imshow(I);title('原始tif图像') %%真彩图像.转索图像.灰度图 ...
- matlab生成n阶O型方阵,matlab教程 06
<matlab教程 06>由会员分享,可在线阅读,更多相关<matlab教程 06(27页珍藏版)>请在人人文库网上搜索. 1.第6章 模糊逻辑6.1 隶属函数6.1.1 高斯 ...
- 朝花夕拾之Matlab矩阵运算
矩阵运算 1. 加.减运算 运算符:"+"和"-"分别为加.减运算符. 运算规则:对应元素相加.减,即按线性代数中矩阵的"十"," ...
- Matlab 矩阵运算(1)
写在前面: 这个帖子主要是整理我常用到的matlab矩阵运算,给自己作为笔记,也提供给需要的同学们看.里面的内容在很多别的博客也都有介绍,我开始用的时候也是跟他们学习的,在此表示感谢.能附上链接的我都 ...
- Redis中列表list数据类型(增加(在左侧、右侧或指定元素前后插入数据)、获取(获取表内指定范围的元素)、更新(获取指定索引位置的元素值)、删除(删除指定元素、count))
列表的元素类型为string 按照插⼊顺序排序 1. 增加 1.1 在左侧插⼊数据 lpush key value1 value2 ... 例1:从键为a1的列表左侧加⼊数据a . b .c lpus ...
- R语言在dataframe的特定索引位置添加数据行而非在dataframe末尾append数据行实战
R语言在dataframe的特定索引位置添加数据行而非在dataframe末尾append数据行实战 目录 R语言在dataframe的特定索引位置添加数
- 用Javascript为DropDownList添加一个Item至定义索引位置
用Javascript为DropDownList控件下拉式选择添加一个Item至定义索引位置. 准备数据,创建一个对象,将是存储DropDownList控件每个Item数据. View Code Im ...
- 字符串操作:索引位置、去空格、替换字符串
指定字符的索引位置:s.indexOf().s.lastIndexOf() (以字符串s为例.第一次与最后一次出现的位置) 指定索引位置的字符:s.charAt() 去除前.后空格:s.trim() ...
- python for in语句 index_使用for循环查找句子中的单词及其索引位置
我正在编写一个代码,提示用户输入一个句子,然后定义为str1,然后提示输入一个定义为str2的单词. 例如:Please enter a sentence: i like to code in pyt ...
最新文章
- java 8 lambda表达式
- ElasticSearch 索引详解
- JVM源码分析之安全点safepoint
- 使用LWA和Lync模拟外部测试无边缘单前端环境
- linux6.3支持gcc版本,Linux编程中GCC对C++标准支持和如何选择GCC版本使用
- yii2使用 db log
- IT工作一年的总结——来自一个小菜鸟
- 【GlobalMapper精品教程】009:DSM过滤植被和房屋并生成等高线案例教程
- 2020年中国轴承套圈行业市场现状分析,国内市场格局十分分散「图」
- Linux 误删文件后恢复文件
- 基于中文形近字相似度与加权编辑距离融合实现的汉字纠错算法
- UVA: 1589 Xiangqi
- 输入任意一个字符串,判断这个字符串是否是回文,回文示例: 上海自来水来自海上
- 谷歌浏览器上传图片和图片另存为就卡死崩溃解决方案
- android 添加日历事件,android 本地日历插入事件
- haml VS erb
- 计算机组成原理笔记(王道考研) 第二章:数据的表示和运算2
- deepin 服务器_深度官方并没有提供Deepin服务器版下载,也没有开发计划
- 栈和堆的区别是什么? 为什么说栈的速度快,堆的速度慢?
- python爬虫豆瓣电影按电影类型_python爬虫之豆瓣电影评分