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 :

liste de numéro commun


Sujet :

MATLAB

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Inscrit en
    Mars 2013
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations forums :
    Inscription : Mars 2013
    Messages : 12
    Par défaut liste de numéro commun
    Bonjour,

    J'ai à ma disposition 3 vecteurs lignes dans lesquels il y a des chiffres communs (appelons ces chiffres ID).

    Avez-vous une idée de code afin que Matlab me sorte une liste dans laquelle est recensée tout les ID figurant dans les 3 vecteurs ?

    Par exemple:

    v1 = [1, 56, 57, 100, 1000]'
    v2 = [3, 40, 56, 1000, 200]'
    v3 = [56, 60, 2, 350, 1000]'

    output désiré = [56, 1000]'

    En vous remerciant d'avance !
    Student

  2. #2
    Modérateur

    Homme Profil pro
    Ingénieur R&D
    Inscrit en
    Août 2014
    Messages
    1 295
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Ingénieur R&D
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Août 2014
    Messages : 1 295
    Par défaut
    Bonjour,

    Une méthode:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    temp = ismember(v1,v2);
    temp2 = v1(temp);
    output = ismember(temp2,v3);

  3. #3
    Membre chevronné
    Homme Profil pro
    Éternel universitaire
    Inscrit en
    Avril 2012
    Messages
    421
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Éternel universitaire

    Informations forums :
    Inscription : Avril 2012
    Messages : 421
    Par défaut
    Une autre solution facilement applicable à des problèmes de plus grande dimension

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    uv=unique([v1 v2 v3]);
    [n, ~] = histc([v1 v2 v3], uv);
    uv(sum(n,2)==3)

  4. #4
    Membre averti
    Homme Profil pro
    Inscrit en
    Mars 2013
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations forums :
    Inscription : Mars 2013
    Messages : 12
    Par défaut
    Merci bcp !

  5. #5
    Rédacteur/Modérateur

    Avatar de Jerome Briot
    Homme Profil pro
    Freelance mécatronique - Conseil, conception et formation
    Inscrit en
    Novembre 2006
    Messages
    20 317
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Freelance mécatronique - Conseil, conception et formation

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 317
    Par défaut
    Une variante de la solution proposée par thecrazydonut :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    v1 = [1 56 57 100 1000];
    v2 = [3 40 56 1000 200];
    v3 = [56 60 2 350 1000];
     
    [uv, ~, b] = unique([v1(:) ; v2(:) ; v3(:)]);
    n = histc(b, 1:max(b));
    uv(n==3)

Discussions similaires

  1. liste des numéro de ligne où on trouve une valeur
    Par homerlehamster dans le forum Excel
    Réponses: 2
    Dernier message: 23/11/2010, 09h52
  2. Algorithmie : Liste des multiples communs.
    Par Invité dans le forum C
    Réponses: 6
    Dernier message: 02/10/2010, 11h54
  3. génération d'une liste de numéros
    Par Jean-Luc80 dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 29/09/2009, 21h16
  4. Réponses: 3
    Dernier message: 28/04/2009, 00h42
  5. Liste des numéros des touches du clavier - Liste des codes Ascii
    Par Filippo dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 20/08/2008, 16h11

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