如何在 MATLAB 中查找数组中数字的位置?

matlabdata analysisprogramming

数组或矩阵中数字的位置也称为该数字在数组或矩阵中的索引。在 MATLAB 中,数组是单索引的,这意味着数组第一个元素的索引为"1",第二个元素的索引为"2",依此类推。

为了查找数组中数字的位置,MATLAB 提供了各种方法。这里,我们将介绍两种常用的方法,它们是:

  • 使用"find"函数。

  • 使用循环机制。

让我们探索使用 MATLAB 查找数组中数字位置的这些方法。

方法 1- 使用"find"函数查找数组中数字的位置

"find"函数是 MATLAB 中的内置函数,可帮助我们确定数组或矩阵中特定数字的位置或索引。

语法

num_position = find(A == number);

这里,A 是数组,"number"是数组中需要确定位置的数字。

让我们看一个例子来了解这个函数的实现,以确定数组中数字的位置。

示例

% MATLAB 代码用于查找数组中数字的位置
% 创建示例数组
A = [10, 15, 20, 25, 30, 35, 15, 30, 15];

% 指定需要确定位置的数字
number = 15;

% 确定数组中数字的位置
num_position = find(A == number);

% 显示指定数字的数组和位置
disp('Input array A:');
disp(A);
disp(['Specified number: ', num2str(number)]);
disp(['Position of ', num2str(number), 'in the array A is: ' num2str(num_position)]);

输出

Input array A:
    10    15    20    25    30    35    15    30    15

Specified number: 15
Position of 15 in the array A is: 2  7  9

因此,这就是使用"find"函数查找数组中数字的位置。

现在让我们讨论如何使用循环来做同样的事情。

方法 2- 使用循环查找数组中数字的位置

在此方法中,我们必须创建一个循环并遍历输入数组以查找指定数字在数组中的位置。

让我们借助 MATLAB 中的示例来了解这种确定数组中数字位置的方法。

示例

% MATLAB 代码使用循环确定数组中数字的位置
% 创建示例数组
A = [10, 15, 20, 25, 30, 35, 15, 30, 15];

% 指定要确定其位置的数字
number = 15;

% 创建一个空数组来保存数字的位置
num_position = [];

% 创建一个循环并遍历数组以查找位置
for i = 1:length(A)
    if A(i) == number
        num_position = [num_position, i];
    end
end

% 显示输入数组、数字及其位置
disp('Input array A:');
disp(A);
disp(['Specified number: ', num2str(number)]);
disp(['Position of ', num2str(number), 'in the array A is: ' num2str(num_position)]);

输出

Input array A:
    10    15    20    25    30    35    15    30    15

Specified number: 15
Position of 15in the array A is: 2  7  9

结论

这就是使用 MATLAB 查找数组中数字的位置。在本教程中,我们讨论了两种常用的查找数组或矩阵中给定数字的位置或索引的方法。


相关文章