Location of maximum number in matrix??

30 ビュー (過去 30 日間)
Maruti Patil
Maruti Patil 2015 年 4 月 20 日
編集済み: Stephen23 2015 年 4 月 20 日
%Suppose I have a matrix
A=[2 3 4;
5 6 7;
8 9 0];
%I want to Find the location of maximum number in the matrix ie of 9.
%How to find it??
c=max(A); % what to do next ?

採用された回答

Stephen23
Stephen23 2015 年 4 月 20 日
編集済み: Stephen23 2015 年 4 月 20 日
Simply use the output indices returned by max function:
>> A = [2 3 4; 5 6 7; 8 9 0];
>> [B,I] = max(A(:))
B =
9
I =
6
where I is a linear index into A:
>> A(I)
ans =
9
Note you can convert linear indices to subscript indices using the function ind2sub:
>> [R,C] = ind2sub(size(A),I)
R =
3
C =
2

その他の回答 (1 件)

Julia
Julia 2015 年 4 月 20 日
Hi,
you have to take the "double maximum", since your c gives a vector. Then you can use the find() function.
>> c=max(max(A))
>> B=find(A==c)
B is just a number. To see how Matlab uses linear indexing click the following link:

カテゴリ

Help Center および File ExchangeMatrix Indexing についてさらに検索

製品

Community Treasure Hunt

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

Start Hunting!

Translated by