Finding the row and column number in a matrix
287 ビュー (過去 30 日間)
古いコメントを表示
for a matrix [1 2 3 4 6 10 7 5 9] mXn matrix-- how is it that i can find the min or max element and then find the row number and the column number for further use in calculations
1 件のコメント
Meryem
2014 年 9 月 4 日
You can have an answer with a few lines of code which is:
%you have ndata matrix
[r,c] = size(ndata); %get row and column values of data matrix
fprintf('\nRow of data matrix is: %d' ,r); %print number of row
fprintf('\nColumn of data matrix is: %d ' ,c); %print number of column
採用された回答
Jan
2011 年 3 月 15 日
data = rand(5, 3);
[maxNum, maxIndex] = max(data(:));
[row, col] = ind2sub(size(data), maxIndex);
Another less compact approach finds the max values for each column at first:
data = rand(5, 3);
[maxNumCol, maxIndexCol] = max(data);
[maxNum, col] = max(maxNumCol);
row = maxIndexCol(col);
Please read "help max" also.
13 件のコメント
その他の回答 (2 件)
Rajashree Jain
2011 年 3 月 15 日
[val row]=max(A(:));
[val col]=max(A(row,:));
[val row col];
1 件のコメント
Jan
2011 年 3 月 15 日
This will not work. In the first line you can get e.g. the last element of A as maximum, then "row==numel(A)". Then "A(row, :)" will fail.
Amey
2011 年 3 月 15 日
The first answer given by Jan Simon is absolutely right and the most efficient way to do it.
0 件のコメント
参考
カテゴリ
Help Center および File Exchange で Multidimensional Arrays についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!