IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

MATLAB Discussion :

Trouver le maximun(minimun) d'une ligne ou colonne dans une matrice.


Sujet :

MATLAB

  1. #1
    Invité
    Invité(e)
    Par défaut Trouver le maximun(minimun) d'une ligne ou colonne dans une matrice.
    Bonjour à tous,
    Actuellement je travaille sur le portage de fonction IDL sous Matlab.
    J'ai donc une liste de fonctions "qui serait" déja native dans Matlab.
    Je cherche donc une fonction matlab qui permet de:
    -Calculer le maximum dans une ligne.
    -Calculer le minimum dans une ligne.
    -Calculer le maximum dans une colonne.
    -Calculer le minimum dans une colonne.
    Il peut s'agir de quattre fonctions bien distinctes..
    J'ai déja cherché sur l'aide mais sans trop de succès et dans http://matlab.developpez.com/faq/?pa..._maxi_position..
    Je suis preneur de toute piste

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    1 002
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2008
    Messages : 1 002
    Points : 476
    Points
    476
    Par défaut
    Les deux commandes nécessaires sont bien MAX et MIN.
    Ensuite pour définir où tu veux les appliquer sur ta matrice: quelle(s) ligne(s) ou quelle(s) colonne(s) ? il faut jouer avec l'indexage logique,
    Sachant qu'une matrice est défini comme suis : A(ligne,colonne) et que l'opérateur double-point ":" signifie "tous les éléments de la ligne ou la colonne".

    Je te laisse décrypter ces 2 exemples :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    A=[1 5 6 ; 4 12 5 ; 8 7 9]
    ligne = 2 ;
    [Max_A Idx_Max_A]=max(A(ligne,:))
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    colone = 3 ;
    [Min_A Idx_Min_A]=min(A(:,colone))
    OS : taff > Window 7 32bit - Home > Windows 7 64bit
    Matlab : taff > v2013b - Home > r2009a

  3. #3
    Invité
    Invité(e)
    Par défaut
    Je dirais que le premier code calcule le max de toute la ligne 2 et pour le second code, on calcule le min de la colonne 3 ?

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    1 002
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2008
    Messages : 1 002
    Points : 476
    Points
    476
    Par défaut
    Voilà, à toi d’adapter ton code suivant ce que tu souhaites
    OS : taff > Window 7 32bit - Home > Windows 7 64bit
    Matlab : taff > v2013b - Home > r2009a

  5. #5
    Invité
    Invité(e)
    Par défaut
    d'accord
    Par contre je ne comprends pas trop ta variable [Max_A Idx_Max_A] ? j'aurais aussi bien pu l'appelé A ou B? j'ai un doute car tu as mis un espace entre les deux noms...

  6. #6
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    Max_A et Idx_Max_A sont deux variables distinctes : la valeur maximale du tableau et sa position.
    Voir la la FAQ Comment trouver la valeur minimale (ou maximale) avec sa position ? pour plus de précision.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 1
    Dernier message: 26/12/2010, 21h20
  2. Réponses: 1
    Dernier message: 06/10/2007, 14h59
  3. Regrouper des colonnes dans une ligne
    Par aturlan dans le forum Access
    Réponses: 1
    Dernier message: 11/01/2006, 21h05
  4. Réponses: 9
    Dernier message: 19/12/2005, 14h24
  5. selectionner une ligne au hasard dans une table
    Par dark_vidor dans le forum Requêtes
    Réponses: 2
    Dernier message: 27/06/2005, 12h01

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo