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

Python Discussion :

Problème de matrice


Sujet :

Python

  1. #1
    Membre à l'essai
    Femme Profil pro
    Étudiant
    Inscrit en
    Mars 2020
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Santé

    Informations forums :
    Inscription : Mars 2020
    Messages : 5
    Par défaut Problème de matrice
    Bonjour !

    Je suis débutante en python donc je m'excuse d'avance si je vous fais perdre votre temps.

    J'ai un projet dans lequel je dois faire une matrice de comptage. J'ai 4 fichiers dans lesquels on a des données, un fichier de référence et un fichier de sortie. Le but est de savoir combien si chaque ligne du fichier de référence est présente dans les quatre fichiers et si oui combien de fois. Pour ça j'ai un dictionnaire m avec en clef la ligne (on fait certains traitements dessus mais qui sont indépendants) et une liste qui y correspond. Chaque valeur correspond au nombre de fois que la ligne est présente dans le fichier.

    Pour faire cela j'ai ceci :
    Nom : matrice_comptage_1.jpg
Affichages : 11112
Taille : 62,0 Ko

    Il n'y a pas de message d'erreurs qui s'affiche, j'ai bien une matrice dans mon fichier de sortie mais le problème c'est que les valeurs qui sont dedans ne sont pas celles qu'elles devraient être. Les valeurs sont censées être comprises entre 0 et 5, j'ai donc fait une erreur quelque part.
    Nom : matrice_comptage_2.jpg
Affichages : 1959
Taille : 18,1 Ko

    Je pense que l'erreur est au niveau des lignes 30 à 33 mais je ne sais pas si c'est un problème de syntaxe ou simplement d'indentation (ou autre chose ?)

    Merci d'avance !

  2. #2
    Membre à l'essai
    Femme Profil pro
    Étudiant
    Inscrit en
    Mars 2020
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Santé

    Informations forums :
    Inscription : Mars 2020
    Messages : 5
    Par défaut
    Oula pardon je me suis mal relue avant de poster le message, je ne sais pas si ce que je dis est bien compréhensible

  3. #3
    Membre Expert

    Homme Profil pro
    Ingénieur calcul scientifique
    Inscrit en
    Mars 2013
    Messages
    1 229
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur calcul scientifique

    Informations forums :
    Inscription : Mars 2013
    Messages : 1 229
    Par défaut
    Il faut utiliser la balise CODE pour poster votre code. C'est le bouton avec un #, lorsque vous écrivez votre message.

    Car personne ne s'amusera a recopier votre code pour le tester.

    Sinon de prime abord, votre code parait bon.
    A part votre variable j qui sert à rien car vous pourriez faire directement
    et votre i que vous pourriez avoir à éviter d'incrémenter manuellement en utilisant enumerateSinon pour en avoir le coeur net, prenez une séquence qui est trouver plus de 5 fois. Ouvrez le fichier d'entrée (avec notepad par exemple), faites un Ctrl+F et chercher cette chaine de caractère dans le fichier. Voyez si elle apparait plus de 5 fois.
    Faut enlever votre traitement aussi à la chaine cherchée.

  4. #4
    Membre à l'essai
    Femme Profil pro
    Étudiant
    Inscrit en
    Mars 2020
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Santé

    Informations forums :
    Inscription : Mars 2020
    Messages : 5
    Par défaut
    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
    #MATRICE DE COMPTAGE
     
    #on lit toutes les lignes du fichier de references et on les met en clé dans un dictionnaire
    #avec comme valeurs [0,0,0,0]
     
    import numpy as np
     
    def matricep (repertoire, reference):
        ref=open(reference, "r")
        m={'Sequence': ['a','b','c','d']}
     
        def traitement(line):
            return(line.strip().lstrip(">"))
     
     
        for line in ref:
            line = traitement(line)
            m[line] = [0 for i in repertoire]
     
        i=0 
        for fichier in repertoire:
            with open(fichier, "r") as f:
                j=0
                for line in f:
                    line = traitement(line) 
     
                    if line in m.keys(): 
                        j+=1
                        m[line][i]= j
            i+=1 
     
        a=(np.array(list(m.items())))
        print(a)
        np.savetxt(r'C:\Users\33652\Desktop\out.txt', a, fmt='%s')
     
    matricep([r'C:\Users\33652\Desktop\a.txt',r'C:\Users\33652\Desktop\b.txt',r'C:\Users\33652\Desktop\c.txt',r'C:\Users\33652\Desktop\d.txt'],r'C:\Users\33652\Desktop\ref.txt')

  5. #5
    Membre à l'essai
    Femme Profil pro
    Étudiant
    Inscrit en
    Mars 2020
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Santé

    Informations forums :
    Inscription : Mars 2020
    Messages : 5
    Par défaut
    D'accord super merci beaucoup, je vais essayer de suite !

  6. #6
    Membre à l'essai
    Femme Profil pro
    Étudiant
    Inscrit en
    Mars 2020
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Santé

    Informations forums :
    Inscription : Mars 2020
    Messages : 5
    Par défaut
    Ca fonctionne, merci !

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

Discussions similaires

  1. [Débutant] Problème création matrice de rigidité
    Par sylvain1001 dans le forum MATLAB
    Réponses: 4
    Dernier message: 22/12/2008, 16h42
  2. [Fortran 77] Problème de matrice
    Par info! dans le forum Fortran
    Réponses: 23
    Dernier message: 14/12/2008, 22h44
  3. Divers problèmes de matrice passant de numpy a scipy
    Par thance dans le forum Calcul scientifique
    Réponses: 25
    Dernier message: 12/06/2007, 23h33
  4. Problème de matrice
    Par anasTelecoms dans le forum MATLAB
    Réponses: 1
    Dernier message: 27/05/2007, 10h55
  5. problème de matrice
    Par micfont999 dans le forum C++
    Réponses: 9
    Dernier message: 07/01/2007, 15h19

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