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 :

Incrémenter le nom d'une structure [Débutant]


Sujet :

MATLAB

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Août 2015
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2015
    Messages : 28
    Par défaut Incrémenter le nom d'une structure
    Bonjour a tous,

    J’ai un probléme, je souhaite calculer des vecteurs et les intégrer dans une structure. Je vous explique :
    Je souhaite avoir une structure de la forme
    U2D.1.time
    U2D.1.count
    U2D.2.time
    U2D.2.count
    U2D.3.time
    U2D.3.count
    ...
    Je dispose du code suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    for m = 1 : 10;
     
        for n = 1 : 5
            U2D.m.time=unique(A);
            KK=countmember(U2D.m.time(n),A);
            U2D.m.count=[U2D.m.count;KK];
        end 
     
    end
    Lorsque que fais tourner la boucle, Matlab me renvoit seulement une seule sous structure :
    U2D.m.time
    U2D.m.count
    Ce que je concois bien, mais j'aurai préféré que m dans U2D.m.time et U2D.m.time, s'incrémente en même temps que le m de ma boucle.
    Avez vous des idées concernant le sujet ?

    Je vous remercie par avance

    Matthieu

  2. #2
    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
    Soit :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    for m = 1:10
     
        for n = 1:5
            U2D(m).time = unique(A);
            KK = countmember(U2D(m).time(n),A);
            U2D(m).count = [U2D(m).count;KK];
        end 
     
    end
    Soit :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    for m = 1:10
     
        for n = 1:5
            U2D.time{m} = unique(A);
            KK = countmember(U2Dtime{m}(n),A);
            U2Dcount{m} = [U2Dcount{m};KK];
        end 
     
    end

  3. #3
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Août 2015
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2015
    Messages : 28
    Par défaut
    J'ai utilisé la première méthode : au top !
    Merci Dut

  4. #4
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Août 2015
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2015
    Messages : 28
    Par défaut
    Et pour incrémenter le nom d'un vecteur, comment procéder ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    for k=1:10
        vecteurk=STRUCTURE(k).time;
    end
    Par exemple ici, je souhaiterai avoir en sortie, 10 vecteurs portant les noms : vecteur1, vecteur2, vecteur3...

    J'ai pensé qu'un jouant sur le nom avec quelque chose dans ce style, ça pouvait être possible :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    ['vecteur' num2str(k)]=name;
    name=STRUCTURE(k).time;
    Sans résultats hélas

  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

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

Discussions similaires

  1. incrémenter le nom d'une variable
    Par papimcha dans le forum Macros et VBA Excel
    Réponses: 10
    Dernier message: 30/05/2008, 15h23
  2. Incrémenter le nom d'une variable en Java
    Par jmnicolas dans le forum Débuter avec Java
    Réponses: 3
    Dernier message: 08/04/2008, 16h05
  3. Incrémenter le nom d'une variable
    Par wulfram dans le forum VBA Access
    Réponses: 2
    Dernier message: 13/03/2008, 08h40
  4. Réponses: 37
    Dernier message: 02/03/2006, 01h58
  5. Incrémenter le NOM d'une variable
    Par Mors_Ubyte dans le forum Access
    Réponses: 1
    Dernier message: 03/01/2006, 18h47

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