我想在matlab中找到一个数字在矩阵中的位置
我有一个矩阵我想在matlab中找到一个数字在矩阵中的位置,matlab,Matlab,我有一个矩阵 x = 2 2 3 4 3 2 6 4 8 现在我想知道数字4的位置。 我想要这样的ans: ans=(2,1) (3,2) 因为这些是矩阵中4的位置。ismember将返回1或0的数组,具体取决于单元格值是否为您正在搜索的值: octave:9> x x = 2 2 3 4 3 2 6 4 8 octave:10> ismember(x,4) ans = 0
x =
2 2 3
4 3 2
6 4 8
现在我想知道数字4的位置。我想要这样的
ans
:
ans=(2,1) (3,2)
因为这些是矩阵中4的位置。ismember将返回1或0的数组,具体取决于单元格值是否为您正在搜索的值:
octave:9> x
x =
2 2 3
4 3 2
6 4 8
octave:10> ismember(x,4)
ans =
0
1
0
0
0
1
0
0
0
然后,您可以使用find和ind2sub获取1的数组标识:
octave:11> [i,j] = ind2sub(size(x),find(ismember(x,4)))
i =
2
3
j =
1
2
因此标记为(2,1)和(3,2)。使用:
实际上,我想您甚至可以跳过ismember位,只使用find:[I,j]=ind2sub(size(x),find(x==4))
[i,j] = find(x == 4)