MATLAB-find函数
文章目录
- 一、函数调用格式及说明
- 1. k=find(X)
- 2. k=find(X,n)
- 3. k=find(X,n,direction)
- 4. [row,col] = find(___)
- 5. [row,col,v] = find(___)
- 二、函数应用示例
- 1. 查找矩阵中的零元素和非零元素位置
- 2. 查找满足特定条件的元素
一、函数调用格式及说明
1. k=find(X)
返回数组X中非零元素的位置
- 1.1 如果X为一个非零数,则find返回1;如果X为0,则find返回空数组
X=5;
k1=find(X);
Y=0;
k2=find(Y);
- 1.2 如果X为向量,则find返回的也是一个向量;
X1=[0,5,8,0,2,0]; %X1为行向量
k1=find(X1); %返回的k1也是一个行向量
X2=[0;5;8;0;2;0]; %X2为列向量
k2=find(X2); %返回的k2也是一个列向量
- 1.3 如果X为多维数组,则find按列查找非零元素的位置;
X=[7,6,0;6,3,9;0,0,4]; %X为3×3的二维数组
k1=find(X); %find按列查找非零元素的位置,并返回一个列向量Y=zeros(4,2,3); %创建一个4行2列3维的全零数组
Y([1 12 19 21])=1; %令三维数组的第1、12、19、21个元素的值为1
[row,col]=find(Y); %row返回非零元素的行下标,col返回的是相当于将三维数组全部放到二维上的列下标
- 1.4 如果X全部为零元素或为空,则find返回一个空数组。
X=[];
k1=find(X);
Y=[0,0;0,0;0,0];
k2=find(Y);
2. k=find(X,n)
返回与X中的非零元素对应的前n个位置
X=[0,6,0;6,3,9;0,0,4];
k1=find(X,6);
k2=find(X,4);
k3=find(X,1);
3. k=find(X,n,direction)
direction可以为’first’(默认)或’last’;
direction为’first’,查找与X中的非零元素对应的前n个位置;
direction为’last’,查找与X中的非零元素对应的后n个位置。
X=[0,6,0;6,3,9;0,0,4];
k1=find(X);
k2=find(X,4,'first');
k3=find(X,4,'last');
k4=find(X,1,'last');
4. [row,col] = find(___)
返回数组X中每个非零元素的行和列下标分别存储在row数组和col数组中,查找元素的顺序依旧是按列查找
X=[0,6,0;6,3,9;0,0,4];
[row,col]=find(X);
5. [row,col,v] = find(___)
返回数组X中每个非零元素的行和列下标及X中所有非零元素的值,以向量形式返回
X=[0,6,0;6,3,9;0,0,4];
[row,col,v]=find(X);
二、函数应用示例
1. 查找矩阵中的零元素和非零元素位置
X=[1 0 2;0 1 1;0 0 4];
k1=find(X); %按列查找X中非零元素位置,并返回列向量
k2=find(~X); %对X使用逻辑not运算符查找零值
2. 查找满足特定条件的元素
%%%%%%%%%% 查找满足一个特定条件的元素位置 %%%%%%%%%%
X1=[1 0 2 5;8 0 1 1;0 7 0 4];
k1=find(X1<2,5); %查找矩阵X1中前5个小于2的元素位置
X1(k1) %在命令行窗口查看X的对应元素%%%%%%%%%% 查找等于特定值的元素位置 %%%%%%%%%%
X2=1:2:20; %生成1×10的奇整数数组
k2=find(X2==15); %查找等于15的元素位置%%%%%%%%%% 查找满足多个条件的元素位置 %%%%%%%%%%
X3=[18 3 1 11; 8 10 11 3; 9 14 6 1; 4 3 15 21];
[row,col,v]=find(X3>0&X3<10,3); %在4×4矩阵中查找前3个大于0且小于10的元素,返回这些元素的行下标和列下标
注意:此时v返回的是由逻辑值1(true)组成的列向量,而不是元素值,因为关系运算的结果是由1和0组成的逻辑矩阵。
MATLAB-find函数相关推荐
- matlab matlabpool,Matlab matlabpool函数undefined
我尝试使用matlab并行计算功能. 我先输入"版本"来检查,如果我已经安装了并行计算工具箱,它确实Matlab matlabpool函数undefined >> ve ...
- MATLAB常用函数, 常见问题
MATLAB常用函数 1.常用取整函数 round(x):四舍五入函数 floor(x) : 向下取整, 即 floor(1.2)=1, floor(1.8) = 1 ceil(x) : 向上取整, ...
- matlab doc函数,matlab常用函数.doc
matlab常用函数.doc MatLab 常用函数 1. 特殊变量与常数 ans 计算结果的变量名 computer 确定运行的计算机 eps 浮点相对精度 Inf 无穷大 I 虚数单位 name ...
- matlab中imresize函数的用法,为何 MATLAB imresize 函数和 OpenCV resize 函数结果不同
为何 MATLAB imresize 函数和 OpenCV resize 函数结果不同?今年 4 月,我在依照 MATLAB 代码自己写一个卷积神经网络 C++ 实现的过程中,就发现了这个问题,不过那 ...
- matlab 数学库,matlab数学函数库
(n) 求 n 的阶乘 如何用 matlab 配方 没有发现 matlab 有这一命令,不过我们可以调用 maple 的命令,调用方法如下: 首先加载 maple 中的 student 函数库,加载. ...
- matlab freqz函数使用
Matlab freqz函数使用 (2012-10-22 13:42:03) 转载▼ 标签: 杂谈 freqz函数计算线性系统的频率响应,包括幅频响应和相频响应,基本输入为线性系统的AMMA模型系数向 ...
- Matlab参考函数
附录1 常用命令 附录1.1 管理用命令 函数名 功能描述 函数名 功能描述 addpath 增加一条搜索路径 rmpath 删除一条搜索路径 demo 运行Matlab演示程序 type 列出.M文 ...
- matlab rbf函数_基于径向基函数(RBF)的无网格伪谱法与程序实现(2)——微分矩阵...
参考资料 Gregory E. Fasshauer. Meshfree Approximation Methods with MATLAB. P.387 P401 数值实现 Matlab 2019a ...
- Matlab自定义函数的几种方法
Matlab自定义函数的几种方法_czw-CSDN博客_matlab自定义函数 Matlab 定义函数的几种方法_海底小星星的博客-CSDN博客_matlab定义函数
- matlab私有函数,MATLAB 嵌套函数,子函数,私有函数,重载函数
MATLAB函数嵌套 MATLAB中M文件有两种类型,脚本M文件和函数M文件.脚本M文件是将可执行程序语句放入M文件中,就像在命令窗口那样,按其语句顺序及逻辑关系执行,可以理解为一般的顺序执行程序语句 ...
最新文章
- 决策树算法的原理(接地气版)
- 不该建索引及不走索引的原因
- javaweb的struts2的分页查询操作
- Sentinel连接 Azure 活动日志中的数据
- springboot security 权限校验_十二、SpringBoot 优雅的集成Spring Security
- golang select总结
- 别人家的地铁!长沙地铁全面进入5G时代 下载速率达1Gbps
- java aop管理权限_基于spring aop 权限管理系统原型 - andyj2ee - BlogJava
- OAuth 2和JWT - 如何设计安全的API?
- 以太坊平台评估 私有链和联盟链的机会与挑战
- 计算机网络pop3是什么意思,smtp服务器是什么 pop3服务器是什么?
- 皮卡丘为什么不进化_皮卡丘为什么不进化?
- bayaim_今晚打老虎
- Arm 虚拟硬件与新解决方案或将颠覆物联网产品研发
- 如何为IT部门制定更好的战略计划
- signing failed: agent refused operation
- isp调试linux程序,相机isp调试 - Linux - Firefly开源社区相机isp调试
- 敏捷与数字化转型银行_使敏捷人超越数字化
- crosstool-ng 交叉工具链默认配置 名词解释
- 爬虫—有道翻译案例(史上最详细分析教程)