📜  如何在 MATLAB 中查找数组中元素的索引?(1)

📅  最后修改于: 2023-12-03 15:24:17.103000             🧑  作者: Mango

如何在 MATLAB 中查找数组中元素的索引?

在 MATLAB 中,我们经常需要查找数组中某个元素的索引,以便进行其他操作。以下介绍几种常用的查找数组索引的方法。

方法一:使用 find 函数

示例代码:

A = [1 2 3 4 5];
idx = find(A == 4);
disp(idx);

运行结果:

4

其中,find(A == 4) 表示找出数组 A 中所有值为 4 的元素的索引,存储在 idx 中。如果数组中有多个符合条件的元素,find 函数将返回一个数组,每个元素表示找到的一个索引。

方法二:使用 ismember 函数

示例代码:

A = [1 2 3 4 5];
B = [3 4];
idx = ismember(A, B);
disp(find(idx));

运行结果:

3     4

其中,ismember(A, B) 表示返回一个逻辑数组,表示数组 A 中每个元素是否存在于数组 B 中。find(idx) 表示找出逻辑数组 idx 中所有为真(即值为 1)的元素的索引,存储在返回的数组中。

方法三:使用 unique 函数

示例代码:

A = [1 1 2 3 3 3];
B = unique(A);
idx = ismember(A, B(2));
disp(find(idx));

运行结果:

1     2

其中,unique(A) 表示返回数组 A 中去重后的元素,存储在数组 B 中。ismember(A, B(2)) 表示返回一个逻辑数组,表示数组 A 中每个元素是否等于数组 B 中的第二个元素(即去重后的第二个元素)。find(idx) 表示找出逻辑数组 idx 中所有为真的元素的索引,存储在返回的数组中。

以上就是 MATLAB 中查找数组中元素的索引的常见方法,希望能对您的编程学习有所帮助。