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 :

parcourir les éléments d'une colonne dans un fichier csv


Sujet :

Python

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Femme Profil pro
    Étudiant
    Inscrit en
    Février 2014
    Messages
    110
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2014
    Messages : 110
    Par défaut parcourir les éléments d'une colonne dans un fichier csv
    Bonjour
    j'ai un fichier csv composé de 4 colonnes et 10 lignes
    Comment je peux parcourir les éléments de chaque colonne??
    j'ai fait le code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    lecteur = csv.reader(open("MONFICHIER.csv","rb"))
    for row in :
        print row
    Mais, il me permet de parcourir les lignes de fichier non pas les colonnes.
    et le code suivant me donne seulement les élements de la colonne 1 :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    for row in :
        print row[1]
    Merci d'avance

  2. #2
    Membre confirmé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Octobre 2013
    Messages
    156
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Santé

    Informations forums :
    Inscription : Octobre 2013
    Messages : 156
    Par défaut
    Bonjour,

    Cette question a déjà été posée moult fois : http://www.developpez.net/forums/d16...-texte-python/

  3. #3
    Expert confirmé

    Homme Profil pro
    Inscrit en
    Octobre 2008
    Messages
    4 307
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2008
    Messages : 4 307
    Par défaut
    Salut,

    Et si tu reconstitues ton tableau, ce n'est pas plus simple ?

    Comme ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    table = []
    with open('mat.csv', 'r') as csvfile:
        matreader = csv.reader(csvfile, delimiter='\t')
        for row in matreader:
            table.append(row)
    Ensuite pour extraire une colonne seule, par exemple la troisième:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    col_2 = [i[2] for i in table]
    print(col_2)

  4. #4
    Membre confirmé
    Femme Profil pro
    Étudiant
    Inscrit en
    Février 2014
    Messages
    110
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2014
    Messages : 110
    Par défaut
    Citation Envoyé par VinsS Voir le message
    Salut,

    Et si tu reconstitues ton tableau, ce n'est pas plus simple ?

    Comme ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    table = []
    with open('mat.csv', 'r') as csvfile:
        matreader = csv.reader(csvfile, delimiter='\t')
        for row in matreader:
            table.append(row)
    Ensuite pour extraire une colonne seule, par exemple la troisième:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    col_2 = [i[2] for i in table]
    print(col_2)
    Merci pour la réponse.
    Mon objectif est de parcourir à chaque fois une colonne pour faire un calcul précis sur les éléments de chaque colonne de fichier.
    je ne cherche pas une colonne précise.
    Merci d'avance

  5. #5
    Expert confirmé

    Homme Profil pro
    Inscrit en
    Octobre 2008
    Messages
    4 307
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2008
    Messages : 4 307
    Par défaut
    Il suffit d'utiliser min() ou max() sur chaque ligne.

    Par exemple:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    best_of = []
    for t in table:
        m = max(t)
        best_of.append((t.index(m), m))
     
    for idx, best in enumerate(best_of):
        print("-%s  best: %s\tcol: %s" %(idx, best[1], best[0]))

  6. #6
    Membre confirmé
    Femme Profil pro
    Étudiant
    Inscrit en
    Février 2014
    Messages
    110
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2014
    Messages : 110
    Par défaut
    Citation Envoyé par VinsS Voir le message
    Il suffit d'utiliser min() ou max() sur chaque ligne.

    Par exemple:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    best_of = []
    for t in table:
        m = max(t)
        best_of.append((t.index(m), m))
     
    for idx, best in enumerate(best_of):
        print("-%s  best: %s\tcol: %s" %(idx, best[1], best[0]))
    Merci VinsS pour votre patience.
    Mais comment je peux parcourir les colonnes de fichier, il n' y a pas une sorte de boucle for ou bien transformer chaque colonne à une liste pour que je peux faire mes calculs.

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

Discussions similaires

  1. [JDOM] Récupérer les éléments d'une balise dans un fichier xml complexe avec JDOM et java
    Par thdco dans le forum Format d'échange (XML, JSON...)
    Réponses: 4
    Dernier message: 07/03/2016, 10h47
  2. Ajout d'une colonne dans un fichier csv
    Par sorilazer dans le forum Shell et commandes GNU
    Réponses: 11
    Dernier message: 12/11/2012, 18h08
  3. Copier les éléments d'une colonne dans une autre
    Par adam57 dans le forum PL/SQL
    Réponses: 2
    Dernier message: 05/12/2008, 15h23
  4. Réponses: 2
    Dernier message: 07/04/2008, 16h37
  5. Réponses: 2
    Dernier message: 27/12/2005, 20h09

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