valor una posicion matriz extraer elementos matlab max matrix-indexing

una - ¿Cómo puedo encontrar el valor máximo y su índice en matriz en MATLAB?



find matlab (5)

En el caso de una matriz 2D (matriz), puede usar:

[val, idx] = max(A, [], 2);

La parte idx contendrá el número de columna que contiene el elemento máximo de cada fila.

Supongamos que tengo una matriz, a = [2 5 4 7] . ¿Cuál es la función que devuelve el valor máximo y su índice?

Por ejemplo, en mi caso, esa función debería devolver 7 como valor máximo y 4 como índice.


La función es max . Para obtener el primer valor máximo, debe hacer

[val, idx] = max(a);

val es el valor máximo e idx es su índice.


Para una matriz, puedes usar esto:

[M,I] = max(A(:))

I es el índice de A (:) que contiene el elemento más grande.

Ahora, use la función ind2sub para extraer los índices de fila y columna de A correspondientes al elemento más grande.

[I_row, I_col] = ind2sub(size(A),I)

fuente: https://www.mathworks.com/help/matlab/ref/max.html


Puede usar max () para obtener el valor máximo. La función máxima también puede devolver el índice del valor máximo en el vector. Para obtener esto, asigne el resultado de la llamada al máximo a un vector de dos elementos en lugar de una sola variable.

por ejemplo, z es tu matriz,

>> [x, y] = max(z) x = 7 y = 4

Aquí, 7 es el número más grande en la 4ª posición (índice).


Estuche 3D

Modificando la respuesta de Mohsen para el arreglo 3D:

[M,I] = max (A(:)); [ind1, ind2, ind3] = ind2sub(size(A),I)