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 :

Tableau de cellules : problème


Sujet :

MATLAB

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mars 2011
    Messages
    98
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2011
    Messages : 98
    Points : 37
    Points
    37
    Par défaut Tableau de cellules : problème
    Bonjour,

    Voici la difficulté que je rencontre :

    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
    >> a={3 4}
     
    a = 
     
        [3]    [4]
     
    >> a{:,1:2}
     
    ans =
     
         3
     
     
    ans =
     
         4
     
    >> b=a{:,1:2}
     
    b =
     
         3
     
    >>
    b ne comprend que la première des valeurs associées à a{:,1:2}, or, je voudrais qu'elle les contienne toutes.

    Que feriez-vous ?


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

    Selon la sortie que tu veux:
    Ou
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    b = {a{:,1:2}} % ou b = a(:,1:2)

  3. #3
    Modérateur

    Homme Profil pro
    Ingénieur en calculs scientifiques
    Inscrit en
    Août 2007
    Messages
    4 639
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Ingénieur en calculs scientifiques

    Informations forums :
    Inscription : Août 2007
    Messages : 4 639
    Points : 7 614
    Points
    7 614
    Par défaut
    Bonjour,

    On peut aussi utiliser cell2mat :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    >> b = cell2mat(a)
     
    b =
     
         3     4
    Pour une bonne utilisation des balises code c'est ici!
    Petit guide du voyageur MATLABien : Le forum La faq Les tutoriels Les sources


    La nature est un livre écrit en langage mathématique. Galilée.

  4. #4
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mars 2011
    Messages
    98
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2011
    Messages : 98
    Points : 37
    Points
    37
    Par défaut
    Merci

    Une autre précision s'il vous plaît :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    >> a={3 4 5}
     
    a = 
     
        [3]    [4]    [5]
     
    >> b={a{1,2:3}}
     
    b = 
     
        [4]    [5]
    Comment faire pour que les résultats de b apparaissent verticalement, l'un après l'autre ?

  5. #5
    Modérateur

    Homme Profil pro
    Ingénieur en calculs scientifiques
    Inscrit en
    Août 2007
    Messages
    4 639
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Ingénieur en calculs scientifiques

    Informations forums :
    Inscription : Août 2007
    Messages : 4 639
    Points : 7 614
    Points
    7 614
    Par défaut
    Il suffit d'utiliser l'opérateur qui permet de transposer un tableau :
    Pour une bonne utilisation des balises code c'est ici!
    Petit guide du voyageur MATLABien : Le forum La faq Les tutoriels Les sources


    La nature est un livre écrit en langage mathématique. Galilée.

  6. #6
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mars 2011
    Messages
    98
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2011
    Messages : 98
    Points : 37
    Points
    37
    Par défaut
    Merci beaucoup.

    Un nouveau problème apparaît... :

    je voudrais qu'en sortie de filelist, il y ait :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    R1_October_03_2011_44984193.wav
    R1_October_03_2011_45170109.wav

    Or j'obtiens :

    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
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    >> tempfilelist{1,3:4}
     
    ans =
     
    R1_October_03_2011_44984193.wav
     
    ans =
     
    R1_October_03_2011_45170109.wav
     
    >> filelist=[tempfilelist{1,3:4}]'
     
    filelist =
     
    R
    1
    _
    O
    c
    t
    o
    b
    e
    r
    _
    0
    3
    _
    2
    0
    1
    1
    _
    4
    4
    9
    8
    4
    1
    9
    3
    .
    w
    a
    v
    R
    1
    _
    O
    c
    t
    o
    b
    e
    r
    _
    0
    3
    _
    2
    0
    1
    1
    _
    4
    5
    1
    7
    0
    1
    0
    9
    .
    w
    a
    v
     
    >>

  7. #7
    Invité
    Invité(e)
    Par défaut
    Comme je te l'ai dit dans cette discussion, les chaînes de caractères sont à stocker plutôt sous forme de tableaux de caractères.
    Si tu as bien compris mon post #2, tu devrais savoir que la première syntaxe transforme le contenu en simple tableau tandis que la seconde conserve le format de cellules
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    tempfilelist(1,3:4) = {'R1_October_03_2011_44984193.wav'
        'R1_October_03_2011_45170109.wav'};
    filelist = tempfilelist(1,3:4).'
    % OU filelist={tempfilelist{1,3:4}}.'
    Dernière modification par Invité ; 02/02/2012 à 23h05.

  8. #8
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mars 2011
    Messages
    98
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2011
    Messages : 98
    Points : 37
    Points
    37
    Par défaut
    Merci beaucoup !

    Je m'entraîne...

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

Discussions similaires

  1. [Débutant] Problème avec tableau de cellules
    Par Super Nonuche dans le forum MATLAB
    Réponses: 2
    Dernier message: 10/09/2014, 11h57
  2. [Débutant] Problème conversion tableau de cellule en matrice
    Par niepoc dans le forum MATLAB
    Réponses: 2
    Dernier message: 22/05/2008, 23h25
  3. Réponses: 4
    Dernier message: 08/04/2008, 08h55
  4. [VBA]tableau de cellules
    Par max2245 dans le forum Macros et VBA Excel
    Réponses: 13
    Dernier message: 22/01/2006, 19h42
  5. Réponses: 21
    Dernier message: 21/11/2005, 09h52

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