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 :

Base de donnée en Matlab


Sujet :

MATLAB

  1. #1
    Membre à l'essai
    Inscrit en
    Février 2009
    Messages
    28
    Détails du profil
    Informations forums :
    Inscription : Février 2009
    Messages : 28
    Points : 24
    Points
    24
    Par défaut Base de donnée en Matlab
    Bonjour,

    j'ai un problème au niveau de la récupération de données d'une base en MATLAB.
    En fait, je réussi à créer des bases des données mais le problème est au niveau de la récupération de ces données.
    Voila juste une petite idée sur mon programme :
    j'ai sauvegardé mes données dans des bases itérations par un exemple un nombre N d'itérations
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    save(' itération',num2str(i),'fi');
    Cette sauvegarde est réalisée dans un boucle for donc j'ai crée N bases de donnée et par la suite N tableau fi.

    Et donc je veux récupérer ces N tableau fi et les remplir dans un tableau dans le programme pour faire le calcul nécessaire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    h = load([' itération',num2str(i),'fi');
    f = h.fi;
    J'ai essayé de le récupérer dans un tableau mais il m'affiche une erreur et lorsque je fais comme ça il récupère juste les données de la dernière itération.

    Pouvez-vous m'aider?
    Merci d'avance

  2. #2
    Expert confirmé
    Avatar de duf42
    Homme Profil pro
    Formateur en informatique
    Inscrit en
    Novembre 2007
    Messages
    3 111
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Formateur en informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2007
    Messages : 3 111
    Points : 4 661
    Points
    4 661
    Par défaut
    Bonjour,

    A première vue, tu as plusieurs soucis avec ton code:


    Duf
    Simulink & Embedded Coder

    Au boulot : Windows 7 , MATLAB r2016b
    A la maison : ArchLinux mais pas MATLAB

  3. #3
    Membre à l'essai
    Inscrit en
    Février 2009
    Messages
    28
    Détails du profil
    Informations forums :
    Inscription : Février 2009
    Messages : 28
    Points : 24
    Points
    24
    Par défaut
    ouii j'ai déja mis le crochet mais le problème c'est pas ça en fait
    voila c'est ce que je veux moi
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
                for i=0:com_tra
                    ggg(i,:) = load([' itération ',num2str(i)],'fi');
                    fij (i,:)= ggg(i,:).fi;
                end
    avec com_tra représente le nombre d'itération c'est à dire le nombre de base de données.
    mais lorsque j'ecrit ça il m'affiche des messages d'erreurs.
    c'est à dire je veux récupérer tous les données de tous les bases dans un meme tableau
    merci d'avance

  4. #4
    Expert confirmé
    Avatar de duf42
    Homme Profil pro
    Formateur en informatique
    Inscrit en
    Novembre 2007
    Messages
    3 111
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Formateur en informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2007
    Messages : 3 111
    Points : 4 661
    Points
    4 661
    Par défaut
    Si tu veux qu'on t'aide, il faudrait nous montrer les messages d'erreur que tu obtiens...
    Simulink & Embedded Coder

    Au boulot : Windows 7 , MATLAB r2016b
    A la maison : ArchLinux mais pas MATLAB

  5. #5
    Membre à l'essai
    Inscrit en
    Février 2009
    Messages
    28
    Détails du profil
    Informations forums :
    Inscription : Février 2009
    Messages : 28
    Points : 24
    Points
    24
    Par défaut
    ??? Subscript indices must either be real positive integers or logicals.

    Error in ==> test_fin at 125
    ggg(i, = load([' itération ',num2str(i)],'fi');
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    for i=0:com_tra
                    ggg(i,:) = load([' itération ',num2str(i)],'fi');
                    fij (i,:)= ggg(i,:).fi;
                end
    juste il faut noter que com_tra est le nombre d'itération cad le nombre de tous le bases de donnée sauvegardées

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    58
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juin 2007
    Messages : 58
    Points : 69
    Points
    69
    Par défaut
    Citation Envoyé par ing_b Voir le message
    ??? Subscript indices must either be real positive integers or logicals.
    Matlab n'accepte pas l'indice 0 pour les tableau ou les vecteurs. Ta boucle devrait commencer à 1. Ou alors du moins tes indices pour ce que tu load devraient être i+1

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    for i=0:com_tra
         ggg(i+1,:) = load([' itération ',num2str(i)],'fi');
         fij (i+1,:)= ggg(i+1,:).fi;
    end
    EDIT: Le lien vers la faq

  7. #7
    Membre à l'essai
    Inscrit en
    Février 2009
    Messages
    28
    Détails du profil
    Informations forums :
    Inscription : Février 2009
    Messages : 28
    Points : 24
    Points
    24
    Par défaut
    il m affiche un message d'erreur
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    for i=0:com_tra-1
         ggg(i+1,:) = load(['Trame ',num2str(i)],'fi');
         fij(2*i+1,:) = ggg(i+1,:).fi;
    end
    ??? Subscripted assignment dimension mismatch.
    (fi estun tablo de deux lignes)
    donc j ai mis
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    for i=0:com_tra-1
         ggg(i+1,:) = load(['Trame ',num2str(i)],'fi');
    end
    ggg.fi il affiche tous le tableau mais juste sous forme de
    ans =tablo 1
    ans=tablo 2
    et lorsque j 'ai mis celle la
    t=ggg.fi
    il m affiche que le premier tablau
    or moi je veux recupére tous le tableau (tablo1 et tablo2)

Discussions similaires

  1. Base de données et MATLAB
    Par Marie_7 dans le forum MATLAB
    Réponses: 1
    Dernier message: 23/07/2012, 16h56
  2. [Débutant] comment acceder a la base de donné sous MATLAB
    Par nina02 dans le forum Interfaces Graphiques
    Réponses: 3
    Dernier message: 21/03/2011, 13h56
  3. [Débutant] gestion de la base de donnée dans Matlab
    Par magntar dans le forum MATLAB
    Réponses: 0
    Dernier message: 16/04/2009, 22h01
  4. Quelle est la meillieur base de données avec matlab
    Par usto2005 dans le forum MATLAB
    Réponses: 3
    Dernier message: 04/05/2008, 19h31
  5. Base de données et MATLAB
    Par slimak dans le forum MATLAB
    Réponses: 1
    Dernier message: 24/12/2007, 16h18

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