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 :

programmation sur matlab


Sujet :

MATLAB

  1. #1
    Candidat au Club
    Inscrit en
    Mars 2009
    Messages
    6
    Détails du profil
    Informations forums :
    Inscription : Mars 2009
    Messages : 6
    Points : 2
    Points
    2
    Par défaut programmation sur matlab
    bonjour,
    mon programme, sur matlab, gère des fichiers excels, je veut que leurs enregistrement se fait automatiquement dans un même fichier texte.
    pouvez-vous m'aider s'il vous plait?

  2. #2
    Membre actif
    Inscrit en
    Novembre 2006
    Messages
    236
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 236
    Points : 213
    Points
    213
    Par défaut
    Je n'ai pas bien compris ta question...

    tu peux montrer ton code et dire exactement ce que tu souhaites faire ?

  3. #3
    Candidat au Club
    Inscrit en
    Mars 2009
    Messages
    6
    Détails du profil
    Informations forums :
    Inscription : Mars 2009
    Messages : 6
    Points : 2
    Points
    2
    Par défaut
    voici mon code:
    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
    data = [2    1    2    1    1    2    2    2    2    2    1    2    2    1    2    1    2    1    2    1    2    2    1    2    2    1    2    2    2    2    1    2    2    1    2    2    2    2    2    2    2    2    1    2    2    2    1    1    2    1    2    2    2    2    2    2    2    1    1    2    1    2    2    2    2    2    2    1    1    2    2    2    2    2    2    1    2    1    1    1    1    1    1    1
        2    1    2    1    1    1    1    2    1    2    1    1    1    1    1    1    1    1    1    1    1    1    1    2    1    2    1    2    1    1    1    1    2    2    2    2    2    2    1    2    2    1    2    2    1    2    1    2    2    2    2    1    2    1    2    2    2    1    2    1    2    2    2    2    1    2    2    2    1    1    2    2    1    1    2    1    2    2    2    2    2    1    2    1
        2    2    2    1    1    1    1    2    2    2    2    1    2    1    1    2    1    1    1    2    1    2    2    2    1    2    2    2    1    2    1    1    2    2    2    2    2    2    2    2    2    2    1    1    1    2    2    2    2    2    2    2    2    2    2    2    2    2    2    1    2    1    1    1    2    2    2    2    1    1    2    2    1    1    2    2    2    2    2    2    2    2    2    2
        2    1    1    2    1    2    2    1    2    1    1    1    1    2    2    1    2    2    2    1    2    2    2    2    2    2    2    2    2    2    2    2    2    2    2    1    1    1    2    1    2    1    1    2    1    2    1    1    1    1    2    2    2    2    2    1    2    1    1    2    1    1    2    1    2    1    2    2    1    1    2    2    2    1    2    2    2    2    2    2    2    2    2    2
        1    2    2    1    2    1    1    2    1    1    1    2    1    1    1    1    2    2    1    2    2    1    2    1    2    1    1    2    2    1    2    1    2    2    2    1    1    2    2    2    2    2    2    1    2    2    2    2    2    2    2    1    2    1    1    2    1    1    2    1    2    2    2    2    2    2    2    2    1    2    2    2    1    1    1    1    2    1    2    2    2    2    1    2
        2    1    1    1    1    1    2    1    2    2    1    2    1    2    1    2    2    1    1    2    2    2    2    2    2    2    2    2    2    1    2    2    2    2    2    2    2    1    1    2    2    1    1    1    1    1    2    1    2    1    2    1    2    2    1    2    2    2    2    1    2    1    1    1    1    2    1    1    2    1    2    2    1    2    2    2    2    2    2    2    2    2    2    2
        2    2    1    2    1    2    1    1    1    1    2    2    2    1    2    1    2    2    2    1    2    1    1    1    1    2    2    2    2    2    2    2    2    1    2    2    1    1    2    1    1    1    1    1    1    1    2    1    2    1    2    2    1    1    1    1    1    1    1    1    1    1    1    1    2    1    1    1    1    1    1    1    1    1    1    1    1    2    2    2    2    1    2    1
        1    1    1    1    1    1    1    1    1    2    1    1    1    1    1    1    1    1    2    1    1    1    2    2    1    2    2    2    2    1    2    1    1    1    1    2    2    1    1    1    1    1    1    1    1    2    2    1    2    1    1    1    2    1    1    2    1    1    1    1    1    1    1    1    1    1    1    1    1    1    1    1    2    2    1    2    2    2    2    2    2    1    1    1
        2    2    1    2    2    2    2    2    2    2    2    2    2    2    1    2    2    1    1    1    1    1    2    2    2    2    2    2    2    2    2    2    1    2    1    2    2    2    2    2    2    2    2    1    2    2    2    2    2    2    2    2    2    2    2    2    2    2    2    2    2    2    2    2    2    2    1    1    1    1    1    1    2    1    1    2    2    2    2    2    1    1    1    2
        1    1    1    1    1    1    1    1    1    1    1    1    1    1    1    1    1    1    1    1    1    1    1    1    1    1    1    1    1    1    1    1    1    1    1    2    2    2    2    2    2    2    2    2    2    2    2    2    2    2    2    2    2    2    2    2    2    2    2    2    2    2    2    2    2    2    2    2    2    2    2    2    2    2    2    2    2    2    2    2    2    2    2    2
     
        ];
    fid = fopen('data2.txt','a+');
    i=1;
    while i<917,
        test=0;
     
        n=84*rand();
        z=round(n);
        if z==0
            test=1;
     
        end
        if test==0
            data = [data data(:,z)];
            i=i+1;
        end
    end
    fclose(fid);
    ns=[2 2 2 2 2 2 2 2 2 2];
    order=[1 2 3 4 5 6 7 8 9 10];
    names={'meta','pr','bcl2','taille','age','her2','egfr','her4','her3','er'};
    dag=learn_struct_k2(data,ns,order,'scoring_fn','bayesian');
    draw_graph(dag,names);
    à chaque fois je fait sur matlab open dag, il me génère un fichier excel.
    ces fichiers je veut les enregistrer automatiquement dans un même fichier texte.
    pouvez-vous me donner un code qui permet de faire cet enregistrement?

  4. #4
    Membre éclairé
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    1 298
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 1 298
    Points : 886
    Points
    886
    Par défaut
    Salut, j'avoue ne pas avoir bien compris ce que tu veux faire en Excel et les fichiers texte. Mais pour écrire dans un fichier texte tu peux utiliser la commande fprintf ==> doc fprintf

  5. #5
    Candidat au Club
    Inscrit en
    Mars 2009
    Messages
    6
    Détails du profil
    Informations forums :
    Inscription : Mars 2009
    Messages : 6
    Points : 2
    Points
    2
    Par défaut
    le code que j'ai donné permet de gérer des graphes (par exemple je fait 100 exécutions) et chaque graphe a une sortie binaire (0:l'arc n'existe pas, 1:l'arc existe ou bien 1 et 2) sous forme de fichier excel lorsque je fait open dag sur matlab. ces fichiers je veut les enregistrer dans un même fichier texte aprtir du quel je vai estimer un graghe final (je compte l'existance de l'arc, s'il dépasse 50% je le garde sinon je passe à l'arc suivant).
    pouvez-vous me proposer un code qui permet d'optenir ce fichier texte? et comment compter l'existance des arcs apartir de ce fichier?

  6. #6
    Expert éminent sénior
    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
    Points : 14 828
    Points
    14 828
    Par défaut
    As-tu regardé la doc de FPRINTF comme te l'a suggéré salseropom ?

    J'avoue ne pas comprendre grand-chose non plus à ton problème.
    Et c'est quoi ce "open dag" dont tu parles tout le temps ?

    Pour info, ici personne ne te proposera de code par contre on peux d'aider à construire le tien, à comprendre les erreurs, à l'améliorer.

  7. #7
    Candidat au Club
    Inscrit en
    Mars 2009
    Messages
    6
    Détails du profil
    Informations forums :
    Inscription : Mars 2009
    Messages : 6
    Points : 2
    Points
    2
    Par défaut
    oui j'ai regarder le doc fprintf mais aucune solution pour mon probleme.
    mon programme est basé sur l'algorithme K2, c'es pour ce la je fait open dag. c'est comme une sortie.

  8. #8
    Expert éminent sénior
    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
    Points : 14 828
    Points
    14 828
    Par défaut
    Je crois qu'on a un vrai problème de communication....

    Reprenons depuis le début.
    Déjà le code que nous montres dans ton 2ème post : à quoi sert-il ?
    Tu as une variable data : c'est quoi ? c'est ça les données que tu veux enregistrer dans un fichier texte ?
    Tu as un fichier data2.txt que tu ouvres en écriture (FOPEN) et que tu fermes (FCLOSE) mais tu n'écris jamais dedans. Pourquoi ?
    Tu nous parle de fichiers Excel mais on ne sait pas à quoi ils ressemblent ni à quel moment ils sont générés.
    Tu dis qu'ils sont générés par "open dag" je ne sais toujours pas ce qu'est "open dag" (une fonction MATLAB ? Un logiciel ?....)

    Pourquoi veux-tu transformer tes fichiers Excel en fichiers texte ?
    Pourquoi le faire avec MATLAB (c'est faisable directement dans Excel avec un "Enregistrer Sous...", choisir le format txt ou csv) ?

    Désolée je pose beaucoup de questions mais c'est pour essayer de comprendre ton problème car apparemment on est plusieurs à ne pas le cerner.

  9. #9
    Candidat au Club
    Inscrit en
    Mars 2009
    Messages
    6
    Détails du profil
    Informations forums :
    Inscription : Mars 2009
    Messages : 6
    Points : 2
    Points
    2
    Par défaut

    lorsque je fait sur matlab : , voici ce qu'il me donne
    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
      LEARN_STRUCT_K2 Greedily learn the best structure compatible with a fixed node ordering
      best_dag = learn_struct_K2(data, node_sizes, order, ...)
     
      data(i,m) = value of node i in case m (can be a cell array).
      node_sizes(i) is the size of node i.
      order(i) is the i'th node in the topological ordering.
     
      The following optional arguments can be specified in the form of name/value pairs:
      [default value in brackets]
     
      max_fan_in - this the largest number of parents we allow per node [N]
      scoring_fn - 'bayesian' or 'bic' [ 'bayesian' ]
                   Currently, only networks with all tabular nodes support Bayesian scoring.
      type       - type{i} is the type of CPD to use for node i, where the type is a string
                   of the form 'tabular', 'noisy_or', 'gaussian', etc. [ all cells contain 'tabular' ]
      params     - params{i} contains optional arguments passed to the CPD constructor for node i,
                   or [] if none.  [ all cells contain {'prior', 1}, meaning use uniform Dirichlet priors ]
      discrete   - the list of discrete nodes [ 1:N ]
      clamped    - clamped(i,m) = 1 if node i is clamped in case m [ zeros(N, ncases) ]
      verbose    - 'yes' means display output while running [ 'no' ]
     
      e.g., dag = learn_struct_K2(data, ns, order, 'scoring_fn', 'bic', 'params', [])
     
      To be backwards compatible with BNT2, you can also specify arguments as follows
        dag = learn_struct_K2(data, node_sizes, order, max_fan_in)    
     
      This algorithm is described in
      - Cooper and Herskovits,  "A Bayesian method for the induction of probabilistic
           networks from data", Machine Learning Journal 9:308--347, 1992
    j'en est besoin de travailler avec l'algorithme K2, je ne peut pas utiliser l'excel .
    le code que j'ai donné permet de gérer des graphes non similaires (des noeuds et des arcs entre eux) à chaque exécution.
    apartir de ces graphes je vai estimer un graphe final.

Discussions similaires

  1. Créer des programmes sur MATLAB
    Par pauline.fourniar dans le forum MATLAB
    Réponses: 4
    Dernier message: 29/03/2013, 14h04
  2. Réponses: 0
    Dernier message: 19/11/2011, 18h20
  3. effet doppler programmer sur matlab
    Par coucou21 dans le forum Algorithmes et structures de données
    Réponses: 4
    Dernier message: 08/01/2009, 17h44

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