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 :

Comment décaler une Cell Array de dates ?


Sujet :

MATLAB

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    48
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 48
    Par défaut Comment décaler une Cell Array de dates ?
    Hello,
    Bonne année 2009 à vous tous. Voici mon souci.

    J’ai un vecteur ligne A de N entiers. Pour faire glisser tous les éléments de A de 1 unité vers la droite, mettre une nouvelle valeur x dans la première cellule et supprimer du vecteur A la dernière valeur, je fais ceci :

    Je souhaite faire la même chose, i.e simple, avec une Cell Array mais là je ne vois pas.
    Ma Cell Array B est constitué de N éléments, chaque élément étant une date construite par la fonction clock, c'est-à-dire un vecteur de 6 éléments [year month day hour minute seconds]. Chaque temps ti est stocké dans B{1,i}.

    La seule façon que j’ai trouvée pour l’instant est :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    for i = 1:N-1
        tempB{1,i+1} = B{1,i};        
    end
    B = temptB;
    B{1,1} = tx;
    Quelqu'un aurait – il une idée terrifique (un peu comme pour A) pour simplifier les écritures ?

    Bien à vous.
    Le papat26

  2. #2
    Expert confirmé
    Avatar de Caro-Line
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    9 458
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 9 458
    Par défaut
    Ben presque pareil :
    Si B est horizontal
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    B={'a','b','c'};
    B=[{'x'},B(1:end-1)]
    vertical :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    D=B';
    D=[{'x'},D(1:end-1)]
    L'inconvénient étant de savoir à l'avance quel est le type du tableau.

  3. #3
    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
    Citation Envoyé par LePapat26 Voir le message
    Ma Cell Array B est constitué de N éléments, chaque élément étant une date construite par la fonction clock, c'est-à-dire un vecteur de 6 éléments [year month day hour minute seconds]. Chaque temps ti est stocké dans B{1,i}.
    Pas besoin d'utiliser un tableau de cellules ici, une simple matrice suffit :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    for n=1:5
       X(n,:) =  clock;
       pause(.5);
    end
     
    X = [clock ; X(1:end-1,:)]

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    48
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 48
    Par défaut Resolu : merci beacoup
    Citation Envoyé par Dut Voir le message
    Pas besoin d'utiliser un tableau de cellules ici, une simple matrice suffit :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    for n=1:5
       X(n,:) =  clock;
       pause(.5);
    end
     
    X = [clock ; X(1:end-1,:)]
    Je vous remercie tous les 2 pour vos solutions terrifiques donc

    Le papat

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

Discussions similaires

  1. strcmp dans une cell array
    Par fuyo2004 dans le forum MATLAB
    Réponses: 2
    Dernier message: 15/04/2010, 14h05
  2. [POO] Comment passer une variable à la fonction Date() ?
    Par Valki dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 12/10/2008, 19h42
  3. comment inverser une matrice (array)
    Par bonomsoleil dans le forum C
    Réponses: 7
    Dernier message: 10/11/2006, 20h53
  4. [Access] Comment créer une requete avec la date
    Par Daniela dans le forum Langage SQL
    Réponses: 1
    Dernier message: 27/09/2006, 11h06
  5. comment declarer une variable de type date ?
    Par MAJIK_ENIS dans le forum JDBC
    Réponses: 1
    Dernier message: 26/05/2006, 00h02

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