max value in each row with its index
조회 수: 13 (최근 30일)
이전 댓글 표시
hi , i have the below matrix , and i want to find the maximun value with its location(index)at each row w, so after finding the maximum value of each row then i will find maximum of maximums of these values and save it in another matirx with the same location(index) and all other values are zeros
inputmatrix= 8.0000 0 7.3398 0 8.0000
1.6635 0.7103 3.2000 3.2000 3.2000
3.2953 3.2000 3.2000 3.2000 3.2000
16.0000 16.0000 16.0000 10.8963 7.6226
8.2107 8.0000 0 5.3333 5.3333
0 3.2000 1.1829 3.2000 3.2000
8.0000 4.9461 0 14.2047 8.0000
1.4528 16.0000 16.0000 16.0000 3.3661
8.0000 8.0000 4.0000 4.0000 4.0000
0 2.5510 3.0116 2.6667 2.6667
댓글 수: 0
답변 (2개)
Davide Masiello
2022년 6월 7일
편집: Davide Masiello
2022년 6월 7일
inputmatrix= [8.0000 0 7.3398 0 8.0000;...
1.6635 0.7103 3.2000 3.2000 3.2000;...
3.2953 3.2000 3.2000 3.2000 3.2000;...
16.0000 16.0000 16.0000 10.8963 7.6226;...
8.2107 8.0000 0 5.3333 5.3333;...
0 3.2000 1.1829 3.2000 3.2000;...
8.0000 4.9461 0 14.2047 8.0000;...
1.4528 16.0000 16.0000 16.0000 3.3661;...
8.0000 8.0000 4.0000 4.0000 4.0000;...
0 2.5510 3.0116 2.6667 2.6667];
To find the maximum of each row and their indexes
[row_max,col_idx] = max(inputmatrix,[],2)
I am not sure what you wanna do in the next step though.
댓글 수: 4
Jan
2022년 6월 7일
index = sub2ind(size(inputmatrix), col_idx.', 1:5);
inputmatrix(index) % same values as row_max
Steven Lord
2022년 6월 7일
Do you actually need or want the locations of the maximum element in each row or is that just a temporary step towards your ultimate goal of identifying the largest value in the whole matrix? If the latter, consider an alternate approach. Let's take some sample data.
A = randi([-10 10], 5)
Determine the maximum value in the array (stored as value) and its linear index (stored as location.) Using the 'linear' option requires release R2019a or later.
[value, location] = max(A, [], 'all', 'linear')
Create an all zero array the same size as A.
B = zeros(size(A));
Set the element in B corresponding to the location of the maximum value in A to that maximum value.
B(location) = value
참고 항목
카테고리
Help Center 및 File Exchange에서 Resizing and Reshaping Matrices에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!