Comment obtenir MATLAB pour afficher l'index de la valeur minimum dans un tableau 2D?
Je suis en train d'écrire un script MATLAB qui trouve l'emplacement de la valeur minimale d'un tableau 2D de nombres. Je suis certain qu'il y est seulement de 1 minimum dans ce tableau, afin d'avoir plusieurs endroits dans le tableau avec la même valeur minimale n'est pas un problème. Je peux trouver le minimum de valeur de la matrice, mais dans un 30x30 tableau, je voudrais savoir qui de ligne et de colonne que la valeur minimale est de.
Vous devez vous connecter pour publier un commentaire.
Comme une version alternative, combiner min pour obtenir la valeur minimale et de trouver pour revenir à l'index, si vous avez déjà calculé le minimum puis utilisez juste la trouver.
Ou selon la façon dont vous souhaitez utiliser les informations de localisation, vous pouvez définir avec une logique de tableau au lieu de cela, auquel cas la logique de l'adressage peut être utilisé pour vous donner une table de vérité.
Vous pourrait remodeler la matrice d'un vecteur, à trouver l'indice du minimum à l'aide de MIN et ensuite convertir ce linéaire de l'indice dans une matrice index:
Regarder la description de la min fonction. Il peut renvoyer la valeur minimale ainsi que l'index. Pour un tableau à deux dimensions, il suffit d'appeler deux fois.
Edit: @b3 solution est probablement de calcul plus élégant (plus rapide et nécessite moins d'espace temporaire)
Pour trouver min ou max dans un sous-ensemble d'un vecteur -
Si A est un vecteur et "limite inférieure" et "upperBound" sont les limites du vecteur parmi lesquels vous avez besoin de trouver la (max ou min), puis utiliser cette commande de
Cela renvoie "Valeur" comme la valeur min ou max entre Un(limite inférieure) et Un(uppedBound) et
"Index" comme la "limite inférieure" que le décalage. Donc, pour trouver l'index absolu, vous devez ajouter "limite inférieure" à l'Index.
Une autre solution à l'aide d'une fonction en ligne va travailler.