文档

找到

查找非零元素的下标和值

语法

k =找到(X)
k =找到(X, n)
k =找到(X, n,方向)
(行,坳)=找到(___
(行,坳,v) =找到(___

描述

例子

k=找到(X返回包含的向量线性指数数组中每个非零元素的X

  • 如果X是向量吗找到返回具有相同方向的向量X

  • 如果X是一个多维数组吗找到返回结果的线性索引的列向量。

  • 如果X则不包含非零元素或为空找到返回一个空数组。

例子

k=找到(Xn返回第一个n中的非零元素对应的下标X

例子

k=找到(Xn方向,在那里方向“最后一次”,找到最后一个n中对应于非零元素的下标X.的默认值方向“第一”,它找到第一个n对应于非零元素的下标。

例子

上校) =找到(___返回数组中每个非零元素的行下标和列下标X使用前面语法中的任何输入参数。

例子

上校v) =找到(___还返回向量v的非零元素X

例子

全部折叠

求一个3 × 3矩阵中的非零元素。

X = [1 0 2;0 1 1;0 0 4]
X =1 0 2 0 1 1 0 0 4
k =找到(X)
k =1 5 7 8 9

使用逻辑操作员在X来定位零点。

k2 =找到(~ X)
k2 =2 3 4 6

在一个4 × 4的幻方矩阵中找出小于10的前5个元素。

X =魔法(4)
X =16 2 3 13 5 11 10 8 9 7 6 12 4 14 15
k =找到(X < 10、5)
k =2 .单词exceed联想记忆

查看对应的元素X

X (k)
ans =5 .单词avoid联想记忆

要查找特定的整数值,请使用==操作符。例如,查找等于的元素13在一个1 × 10的奇数向量中。

x = 1:2:20
x =13 5 7 9 11 13 15 17 19
k =找到(x = = 13)
k = 7

要查找非整数值,请使用基于数据的容差值。否则,由于浮点舍入错误,结果有时是一个空矩阵。

y = 0:0.1:1
y =列1至70 0.1000 0.2000 0.3000 0.4000 0.5000 0.6000
k =找到(y = = 0.3)
K = 1x0空双行向量
K = find(abs(y-0.3) < 0.001)
k = 4

创建一个6乘6的神奇方阵,所有奇数索引元素都等于零。

X =魔法(6);X(1:2:结束)= 0
X =0 0 0 0 0 3 32 7 21 23 25 0 0 0 0 8 28 33 17 10 15 0 0 0 0 4 36 29 13 18 11

定位去年四个非零。

k =找到(X 4“最后一次”
k =30 32 34 36

找出4 × 4矩阵中大于的前三个元素0,不到10.指定两个输出以返回元素的行下标和列下标。

X = [18 3 1 11;8 10 11 3;9 14 6 1;4 3 15 21]
X =18 3 1 11 8 10 11 3 9 14 6 14 3 15 21
[row,col] = find(X>0 & X<10,3); / /查询>
行=2 3 4
坳=1 1 1

第一个例子是X (2, 1),这是8

求一个3 × 3矩阵中的非零元素。指定三个输出以返回行下标、列下标和元素值。

X = [3 2 0;5 0 7;0 0 1]
X =3 2 0 -5 0 7 0 0
(行,坳,v) =找到(X)
行=1 2 1 2 3
坳=1 1 2 3 3
v =3 -5 2 - 7

查找一个4 × 2 × 3数组中的非零元素。指定两个输出,上校,以返回非零元素的行下标和列下标。当输入是多维数组时(N > 2),找到返回上校作为线性指数n - 1后的尺寸X

X = 0(4、2、3);X([1 12 19 21]) = 1
X = X(:,:,1) = 1 0 0 0 0 0 0 X(:,:,2) = 0 0 0 0 0 0 0 0 X(:,:,3) = 0 1 0 0 0 1 0 0 0
[行,坳]=找到(X)
行=1 4 3 1
坳=1 3 5 6

输入参数

全部折叠

输入数组,指定为标量、向量、矩阵或多维数组。如果X是空数组还是没有非零元素k为空数组。

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64|逻辑|字符
复数的支持:金宝app是的

要查找的非零数,指定为正整数标量。默认情况下,找到(X, n)寻找第一个n非零元素X

搜索方向,指定为字符串“第一”“最后一次”.寻找去年n非零元素X使用找到(X, n,“最后”)

输出参数

全部折叠

非零元素的下标,以向量形式返回。如果X是行向量吗k也是一个行向量。否则,k是一个列向量。k什么时候是空数组X为空数组或没有非零元素。

可以返回中的非零值X使用X (k)

行下标,返回为向量。在一起,上校指定坳X(行)中的非零元素对应的下标X

作为向量返回的列下标。在一起,上校指定坳X(行)中的非零元素对应的下标X

如果X多维数组是否为N > 2,然后上校是线性指数吗n - 1后的尺寸X.这保持了关系X(行(我),(我)上校= = v(我)

非零元素X,返回为向量。

更多关于

全部折叠

线性指数

线性索引允许使用单个下标来索引数组,例如(k).MATLAB®将数组视为单个列向量,每一列附加到前一列的底部。因此,线性索引从上到下,从左到右为列中的元素编号。

例如,考虑一个3 × 3矩阵。你可以参考(2, 2)元素(5),(2、3)元素(8).线性索引的变化取决于数组的大小;(5)对于3 × 3矩阵和对于4 × 4矩阵返回不同位置的元素。

sub2indind2sub函数在下标和线性下标之间的转换很有用。

提示

  • 要查找满足条件的数组元素,请使用找到结合一个关系表达式。例如,找到(X < 5)返回中元素的线性索引X小于5

  • 直接查找元素X满足条件的X < 5,使用X (X < 5).避免函数调用(找到(X < 5)),不必要地使用找到在逻辑矩阵上。

  • 当您执行找到使用关系操作X > 1,重要的是要记住关系运算的结果是一个由1和0组成的逻辑矩阵。例如,命令(行,坳,v) =找到(X > 1)返回逻辑的列向量1真正的)的值v

  • 行和列下标,上校,与中的线性指标有关k通过k = sub2ind(大小(X)、行、坳)

扩展功能

之前介绍过的R2006a

这个话题有用吗?