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 :

valeurs dans le vecteur le nombre qu'ils sont et la valeurs correspondant


Sujet :

MATLAB

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2012
    Messages
    40
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Février 2012
    Messages : 40
    Points : 27
    Points
    27
    Par défaut valeurs dans le vecteur le nombre qu'ils sont et la valeurs correspondant
    Bonjour,
    Ayant un vecteur
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    P =[1; 1; 2; 4; 4; 5; 6; 7; 8]
    (celui-ci pouvant avoir d'autres valeurs)

    J'aimerais connaître pour chaque valeurs dans le vecteur le nombre qu'ils sont et la valeurs correspondant.

    Le résultat convenable serait
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    [2 1; 1 2; 2 4; 1 5; 1 6; 1 7; 1 8]

    Y a-il une fonction faisant cela?

    Les doublons seront certainement plus difficiles, j'essaie de les résolver en premier

    J'ai donc déterminé X3 =[1 ; 4] (correspondant aux valeurs des doublons dans un vecteur colonne)

    et les indices correspondant dans P avec :


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    for i=1:length(X3)
    [X4] = cat(1,X4, find(P == X3(i)))

    Mais je n'ai pas le droit d'utiliser des boucles...


    Pourriez-vous m'éclairer?

    Merci

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

    Tu peux fortement t'inspirer de ceci.

  3. #3
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2012
    Messages
    40
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Février 2012
    Messages : 40
    Points : 27
    Points
    27
    Par défaut
    Merci!

  4. #4
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2012
    Messages
    40
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Février 2012
    Messages : 40
    Points : 27
    Points
    27
    Par défaut
    Je ne comprends cependant pas la raison du zéro...

    D'après Matlab :


    DIFF(X), for a matrix X, is the matrix of row differences,
    [X(2:n, : ) - X(1:n-1, : )]
    J'aurais pensé que ça affichait : [1; 0; 1; 2; 1; 1; 1; 1; 1] si l'on fait la différence des lignes

  5. #5
    Invité
    Invité(e)
    Par défaut
    C'est pour prendre en compte le premier élément de index.

    Reprenons ton exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    P =[1 1 2 4 4 5 6 7 8];
    Ce schéma t'aidera j'espère à comprendre (partie en rouge en bas à gauche)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
         1   1   2   4   4   5   6   7   8   NaN  	% [P NaN]
         |  /|  /|  /|  /|  /|  /|  /|  /|  /
         | / | / | / | / | / | / | / | / | /
         0   1   2   0   1   1   1   1  NaN 	% diff([P,nan])
         0   2   3       5   6   7   8   9 		% [0 find( diff([P,nan]) )] : 0 concaténé aux indices des éléments non-nuls
         |  /|  /|  ____/|  /|  /|  /|  /
         | / | / | /     | / | / | / | /
         2   1   2       1   1   1   1  		% diff([0,index])
    Comme tu peux le voir, si on n'ajoutait pas 0, le 2 relatif aux deux 1 ne serait pas pris en compte.

  6. #6
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2012
    Messages
    40
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Février 2012
    Messages : 40
    Points : 27
    Points
    27
    Par défaut
    J'ai compris! Merci!

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

Discussions similaires

  1. [Débutant] nombre d'occurence d'une valeur dans un vecteur
    Par kevin07 dans le forum MATLAB
    Réponses: 5
    Dernier message: 08/10/2010, 16h15
  2. Trouver des valeurs dans un vecteur
    Par hollowdeadoss dans le forum MATLAB
    Réponses: 8
    Dernier message: 08/12/2008, 15h21
  3. Toujours la même valeur dans mon vecteur
    Par Elstak dans le forum C++
    Réponses: 7
    Dernier message: 23/10/2008, 14h05
  4. Insérer une valeur dans un vecteur
    Par jalilv6 dans le forum Langage
    Réponses: 2
    Dernier message: 07/04/2006, 07h04
  5. Supprimer une valeur dans un vecteur
    Par jalilv6 dans le forum Langage
    Réponses: 2
    Dernier message: 06/04/2006, 09h33

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