petit problème matlab
Répondre à la discussion
Affichage des résultats 1 à 7 sur 7

petit problème matlab



  1. #1
    invite3803db83

    petit problème matlab


    ------

    Bonjour à tous,
    Comme indiqué dans l'intitulé, j'ai un petit problème sur matlab.

    Voilà, j'ai effectué un calcul 5000 fois, et ai donc obtenu 5000 résultats, mon problème est que j'aimerai regrouper toutes ces données en un seul tableau. Autrement dit j'ai 5000 données uniques, et j'aimerai les obtenir en un seul tableau.

    Quelqu'un peut-il m'aider ?
    Merci d'avance !

    -----

  2. #2
    pat7111

    Re : petit problème matlab

    Ca depend comment tu obtiens chacun de tes 5000 resultats. Je vais supposer qu'il y a une fonction qui te fasse ce calcul. Pour stocker les resultats dans un seul vecteur, on peut par exemple declarer un vecteur vide, puis concatener (horizontalement ou verticalement) le resultat a chaque etape, ce qui donne quelque chose comme

    Code:
    vecResultat =[]
    for i=1:5000
      ResCourant = maFonction(i);
      vecResultat = [vecResultat ResCourant];%Concatene horizontalement a droite- pour verticalement, mettre un ; entre les deux
    end
    Plutôt appliquer son intelligence à des conneries que sa connerie à des choses intelligentes...

  3. #3
    invite3803db83

    Re : petit problème matlab

    Merci bcp pr ta réponse, ca fait du bien d'avoir une réponse rapide !
    Je te donne ma fonction, pr que ce soit plus clair :

    clear all
    close all


    T1=randn(1000,1)*10+100;
    T2=randn(1000,1)*11+102;

    for n=1:5000

    l=1000;
    lX=numel(T3);
    B1=randperm(lX);
    B1=T3(B1(1:l));

    m=1000;
    mX=numel(T3);
    B2=randperm(mX);
    B2=T3(B2(1:m));

    D=mean(B1)-mean(B2)
    end

    Et voilà le but de cette fonction : Générez un tableau T1 de 1000 valeurs aléatoires selon une distribution normale de moyenne 100 et d’écart type 10
    Générez un tableau T2 de 1000 valeurs aléatoires selon une distribution normale de moyenne 102 et d’écart type 11
    Créer une boucle (#for) qui répète cette opération 5000 fois et placez à chaque fois la différence de moyenne dans un tableau D

    Donc mon problème est que j'ai bien les valeurs de D, mais qu'elles ne s'affichent pas sous forme de tableau... Je ne peux travailler que sur la dernière valeur...

    Merci encore !

  4. #4
    invite3803db83

    Re : petit problème matlab

    Oh il manque un morceau de la consigne :

    Créez deux tableaux B1 et B2 contenant chacun 1000 valeurs tirées au hasard sans remise de T3 (#randperm)
    Calculez la différence de moyenne entre B1 et B2

  5. A voir en vidéo sur Futura
  6. #5
    pat7111

    Re : petit problème matlab

    Citation Envoyé par eve.legrand Voir le message
    Donc mon problème est que j'ai bien les valeurs de D, mais qu'elles ne s'affichent pas sous forme de tableau... Je ne peux travailler que sur la dernière valeur...
    Eh bien, avec ce que je suggere precedemment, j'ajoute trois lignes dans ton code


    Code:
    clear all
    close all
    
    
    T1=randn(1000,1)*10+100;
    T2=randn(1000,1)*11+102;
    
    vecD = [];%initialise un vecteur vide 
    
    for n=1:5000
        
        l=1000;
        lX=numel(T3);
        B1=randperm(lX);
        B1=T3(B1(1:l));
        
        m=1000;
        mX=numel(T3);
        B2=randperm(mX);
        B2=T3(B2(1:m));
        
        D=mean(B1)-mean(B2);%pas besoin d'afficher
        vecD = [vecD D];%stockage de l'element courant dans le vecteur
    
    end
    D%Affichage de D a la fin
    Cela dit, je doute que ca marche en l'etat car tu appelles une variable T3 (deuxieme instruction de la boucle) qui n'a jamais ete declaree
    Plutôt appliquer son intelligence à des conneries que sa connerie à des choses intelligentes...

  7. #6
    invite3803db83

    Re : petit problème matlab

    Oui j'ai oublié de copier la ligne correspondant à T3...
    Il s'agissait de : T3=[T1;T2];

    Ca marche, et juste, un énoooorme merci, ça faisait un moment que je planchais dessus !

  8. #7
    pat7111

    Re : petit problème matlab

    you're welcome
    Plutôt appliquer son intelligence à des conneries que sa connerie à des choses intelligentes...

Discussions similaires

  1. Problème Matlab
    Par inviteba67e777 dans le forum Logiciel - Software - Open Source
    Réponses: 2
    Dernier message: 17/12/2011, 10h09
  2. Probléme Matlab
    Par physicien007 dans le forum Logiciel - Software - Open Source
    Réponses: 1
    Dernier message: 22/05/2010, 20h58
  3. Petit bout de code a ajouter a mon fichier Matlab
    Par invitef5d502cc dans le forum Mathématiques du supérieur
    Réponses: 4
    Dernier message: 29/11/2008, 19h03
  4. Petit bout de code a ajouter a mon fichier Matlab
    Par invitef5d502cc dans le forum Logiciel - Software - Open Source
    Réponses: 0
    Dernier message: 20/11/2008, 13h40
  5. problème matlab
    Par invitef5b3a62a dans le forum Logiciel - Software - Open Source
    Réponses: 3
    Dernier message: 23/02/2005, 09h51