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 :

Manipulation d'éléments dans un tableau de cellules (cell array)


Sujet :

MATLAB

  1. #1
    Membre à l'essai
    Inscrit en
    Mars 2007
    Messages
    43
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 43
    Points : 19
    Points
    19
    Par défaut Manipulation d'éléments dans un tableau de cellules (cell array)
    Bonjour,
    jai un code qui me donne comme resultat la matrice suivante nous l'appelerons A: et je veux la modifier et obtenir la matrice B:
    Matrice A:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    'ED200703'	6
    'ED200703'	4
    'ED200706'	6
    'ED200709'	0
    'ED200712'	0
    'ED200803'	-15
    'ED200806'	-2
    'ED200806'	-5
    'ED200806'	-8
    'ED200809'	6
    'ED200812'	6
    'ED200903'	0
    'ED200906'	0
    'ED200909'	-1
    'ED200912'	-1
    'ED201003'	0
    'ED201006'	0
    'ED201009'	0
    'ED201012'	0
    'ED201103'	-5
    'ED201106'	-3
    'ED201106'	-2
    'ED201109'	-5
    'ED201112'	-5
    'TY200706'	17
    'US200706'	-3
    je veux obtenir la matrice B:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    'ED200703'	10
    'ED200706'	6
    'ED200709'	0
    'ED200712'	0
    'ED200803'	-15
    'ED200806'	-15
    'ED200809'	6
    'ED200812'	6
    'ED200903'	0
    'ED200906'	0
    'ED200909'	-1
    'ED200912'	-1
    'ED201003'	0
    'ED201006'	0
    'ED201009'	0
    'ED201012'	0
    'ED201103'	-5
    'ED201106'	-5
    'ED201109'	-5
    'ED201112'	-5
    'TY200706'	17
    'US200706'	-3
    jai ecrit le code suivant mais il me donne un message d'erreur qui est le suivant
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    j=1;  
    for i=1:length(A)  
      if i==1 
      B{j,1}=A{i,1};
      B{j,2}=A{i,2};
            else if  ((strcmp (A{i,1}),(A{i-1,1}))); 
      B{j,2}=B{j,2}+A{i,2};
     else 
      j=j+1;
      B{j,1}=A{i,1};
      B{j,2}=A{i,2};
     end 
    end 
     
    ???         else if  ((strcmp (A{i,1}),(A{i-1,1}))); 
                                                     |
    Error: Incomplete or misformed expression or statement.
    quelqun peut il maider SVP
    merci

  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 316
    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 316
    Points : 52 951
    Points
    52 951
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    B=unique(A(:,1));
     
    for n=1:numel(B)
     
        idx=strcmp(B{n},A(:,1));
        B{n,2}=sum([A{idx,2}]);
     
    end
     
    B
    Il doit exister une solution plus simple avec les nouvelles versions de Matlab

Discussions similaires

  1. [Débutant] Rajouter texte dans une cellule d'un tableau de cellules (cell array)
    Par DudeTitus dans le forum MATLAB
    Réponses: 2
    Dernier message: 20/06/2014, 13h12
  2. Réponses: 7
    Dernier message: 07/04/2011, 13h47
  3. Structure ou tableau de cellules (cell array) ?
    Par tubaas dans le forum MATLAB
    Réponses: 2
    Dernier message: 18/03/2010, 16h10
  4. Compter le nombre d'élément dans un tableau
    Par cryptorchild dans le forum Langage
    Réponses: 6
    Dernier message: 08/07/2005, 13h01
  5. [HTML/CSS]désigner un élément dans un tableau de l'extérieur
    Par FrankOVD dans le forum Mise en page CSS
    Réponses: 2
    Dernier message: 28/06/2005, 21h55

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