Find a element and return indices of a array 3D

30 次查看(过去 30 天)
I have this matrix http://dl.dropbox.com/u/59868217/tmis.mat and I would find something like this name = 5.255560000000000e +02, obtaining output indices of that element. I used this command:
[pnt, size, cmd] = find (tmis == name);
But in this case I get the indexes that do not correspond in fact should be pnt = 4, size = 16, cmd = 2. I read in the matlab documentation which states: "[row, col, v] = find (X, ...) returns a column or row vector v of the nonzero entries in X, as well as row and column indices. If X is a logical expression, then v is a logical array. Output v contains the non-zero elements of the logical array Obtained by Evaluating the expression X " How can I do to get all three indexes?

采纳的回答

Andrei Bobrov
Andrei Bobrov 2012-5-10
clear size % ;)
c = find (tmis == name);
[a b d] = ind2sub(size(tmis),c);

更多回答(1 个)

Honglei Chen
Honglei Chen 2012-5-10
idx = find(tmis == name);
[row,col,pag] = ind2sub(size(tmis),idx)

类别

Help CenterFile Exchange 中查找有关 Matrix Indexing 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by