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 :

Concatenation de csv


Sujet :

Python

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2019
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : France, Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2019
    Messages : 7
    Par défaut Concatenation de csv
    Bonjour à tous,

    Je débute en python et je bloque sur un script : j'ai de nombreux fichiers .dat qui se présentent sous la forme de deux colonnes (abscisses vs ordonnées avec les mêmes abscisses pour tous les fichiers) avec en-tête. Je suis parvenu à rédiger un script qui permet de supprimer les en-têtes ainsi que la colonne des abscisses : j'ai donc environ 200 fichiers .dat contenant chacun une colonne. je me suis également assuré que chacune des colonnes fassent la même longueur.

    j'aimerais créer un seul fichier dans lequel toutes les colonnes seraient mises côte à côte et ce dans le but de traiter ce fichier par la suite. J'ai fait de nombreux essais (avec et sans numpy) sans succès : lorsque je veux écrire les colonnes côte à côte, elles se concatènent les unes à la suites de autres en une seul colonne.
    J'ai aussi essayé de passer ces colonnes en lignes et d'écrire les lignes les unes à la suite des autres dans un fichier --> Dans ce cas, le résultats est loin de mes attentes. Voici le code utilisé pour cette dernière piste :

    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
     
    if i in liste1 or i in liste2 or i in liste3:
            i=str(i)
            data = np.loadtxt('Cell_Eminv9_2_'+i+'_profil_p_Voc.dat')
            A = data[50:280,1:2]
            At=np.transpose(A)
            line=str(At)
            #jusque là tout semble bien fonctionner
            f=open('concatenation.dat', 'a')
            f.write(line)
            f.write('\n')
            f.close()
            i=int(i)
            i=i+1
        else :
            i=i+1
    pourriez-vous m'aider à associer mes 200 fichiers d'une colonne en un fichier de 200 colonnes svp ?

    Bonne journée,

    Val

  2. #2
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 743
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 743
    Par défaut
    Salut,

    La lecture d'un fichier produit une liste (de lignes).
    La lecture des 200 fichiers produira une liste de listes de la forme:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    >>> L = [[1,1,1,1],[2,2,2,2],[3,3,3,3]]
    où de façon simplifiée [1,1,1,1] représente le contenu de 4 lignes du premier fichier, [2,2,2,2] celles du 2nd etc...
    Puis vous la transposez via zip:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    >>> list(zip(*L))
    [(1, 2, 3), (1, 2, 3), (1, 2, 3), (1, 2, 3)]
    >>>
    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  3. #3
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2019
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : France, Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2019
    Messages : 7
    Par défaut Merci
    Bonjour,

    Merci beaucoup pour cette indication.

    Bonne journée,

    Val

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

Discussions similaires

  1. [AC-2003] Export requete "concatener" CSV
    Par chriscol dans le forum Requêtes et SQL.
    Réponses: 4
    Dernier message: 14/04/2014, 10h46
  2. Comparer deux tableaux (.csv) et concatener les lignes
    Par grundraisin dans le forum VBScript
    Réponses: 6
    Dernier message: 21/07/2013, 00h51
  3. [XL-2000] concatenation xls OU csv
    Par Invité dans le forum Excel
    Réponses: 3
    Dernier message: 05/05/2011, 23h21
  4. Concaténer deux fichiers Ligne/Ligne avec SH
    Par guiltouf dans le forum Linux
    Réponses: 7
    Dernier message: 22/05/2007, 14h35
  5. probleme de concatenation
    Par cyna dans le forum C
    Réponses: 2
    Dernier message: 23/08/2002, 10h41

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