Hello everyone, I have a matrix a = [3 2 1; -5 0 6; 0 0 7], where I know the maximum value in the matrix is 7. I want to know the respective row values of the 7, i.e 1,6 and the new matrix b =[1 6 7](the row of the maximum value 7).Please help me with code.
I appreciate your help, TIA, Ketan

 Respuesta aceptada

Star Strider
Star Strider el 21 de Jun. de 2017

0 votos

You are confusing rows and columns. The result you want for ‘b’ is column 3, not row 3:
a = [3 2 1; -5 0 6; 0 0 7];
ix = find(a(:) == max(a(:))); % Find Index Of Maximum
[~,c] = ind2sub(size(a),ix); % Determine Column Of Maximum
b = a(:,c)
b =
1
6
7

2 comentarios

Ketan Kumar Sahu
Ketan Kumar Sahu el 21 de Jun. de 2017
Thank you so much @Star Strider for your help and marking out my mistake . my code is working now. Thanks.
Star Strider
Star Strider el 21 de Jun. de 2017
As always, my pleasure.

Iniciar sesión para comentar.

Más respuestas (1)

Andrei Bobrov
Andrei Bobrov el 21 de Jun. de 2017

1 voto

for 2d arrays
a = [3 2 1; -5 0 6; 0 0 7];
[~,c] = max(max(a));
b = a(:,c)

Categorías

Etiquetas

Preguntada:

el 21 de Jun. de 2017

Comentada:

el 21 de Jun. de 2017

Community Treasure Hunt

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

Start Hunting!

Translated by