很抱歉问一个如此简单和愚蠢的问题,但是Matlab对于我来说确实太难使用了。我的问题仅是如何在Matlab中查找三维数组中最小值的位置。
例如,假设我定义了一个三维数组:
m=zeros(2,2,2);
m(1,2,2)=-2;
m
的最小值应该为-2
,位于(1,2,2)
。我可以通过以下方式找到最小值
m0=min(min(min(m)));
但是当我使用以下方法找到它的位置时:
[x y z]=find(m==m0);
与其返回x=1
,y=2
和z=2
,它返回x=1
,y=4
和z=1
。
如果有人能回答这个问题,我将不胜感激!
min
函数有[val, ind]
版本,但我没有想到可以将其与列向量m(:)
一起使用。这是正确的做法。 - Jeff Irwin