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

Calcul scientifique Python Discussion :

appliquer un filtre/critère à un fichier de 2GO


Sujet :

Calcul scientifique Python

  1. #1
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2018
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2018
    Messages : 8
    Points : 2
    Points
    2
    Par défaut appliquer un filtre/critère à un fichier de 2GO
    Bonjour le forum,

    j'ai un fichier : detection_mtrg_2017.txt de 2GO et j'aimerais lui appliquer un filtre sur les colonnes 4 et 5 correspondant au lat et long pour n'avoir que les données encadrant la france et qu'à la fin j'obtienne un nouveau fichier txt déjà plus léger et avec mes filtres.

    data_foudre : (data,data[,4]<52)
    data_foudre : (data,data[,4]>41)
    data_foudre : (data,data[,5]>-5)
    data_foudre : (data,data[,5]<10)

    voilà ce que j'aimerais bien.

    MERCI d'avance pour votre aide

    Cordialement

  2. #2
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 240
    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 240
    Points : 36 696
    Points
    36 696
    Par défaut
    Salut,

    Citation Envoyé par koeglerjojo Voir le message
    voilà ce que j'aimerais bien.

    MERCI d'avance pour votre aide
    Il faut commencer à travailler avec un fichier bien plus petit avec un minimum de données qui permettront de tester le "filtre".
    Puis si vous savez traiter un fichier de 8Ko, traiter un fichier de 2Go c'est une itération qui va lire le fichier par blocks de 8/16/32/64/128 Ko, filtrer, écrire les données qui restent, et boucler.
    Et si par hasard vous devez effectuer le même traitement plusieurs fois, alors, vous pouvez penser à paralléliser soit en traitant plusieurs blocs à la fois via des threads.

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  3. #3
    Membre émérite

    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
    Points : 2 328
    Points
    2 328
    Par défaut
    Pouvez vous donner les premières lignes de votre fichier que l'on voit la tête qu'il a ?

    2Go, si c'est juste des tableaux de nombres, avec numpy on charge tout d'un coup, ca tient dans le cache.

  4. #4
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2018
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2018
    Messages : 8
    Points : 2
    Points
    2
    Par défaut
    Citation Envoyé par lg_53 Voir le message
    Pouvez vous donner les premières lignes de votre fichier que l'on voit la tête qu'il a ?

    2Go, si c'est juste des tableaux de nombres, avec numpy on charge tout d'un coup, ca tient dans le cache.
    Bonjour, j'ai 10 colonnes : date YYYY/MM/DD
    nano
    num
    lat
    lon
    nbloc
    numloc
    icloud
    amplitude
    maxis

    ce sont toutes des colonnes de nombres.

    Cordialement

  5. #5
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2018
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2018
    Messages : 8
    Points : 2
    Points
    2
    Par défaut
    Re bonjour,

    que pensez vous de cela ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    import csv
    import numpy as np
    fichier = open("/D:/3A/PROJET TUTEURE S9/detection_mtrg_2017.txt")
    maselection=(([:,4]<=52) &([:,4]>41) & ([:,5]<=10) & ([:,5]>-5))
    fichier.write(maselection)
    fichier.close()

    ou

    merci d'avance pour vos réponses

  6. #6
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 240
    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 240
    Points : 36 696
    Points
    36 696
    Par défaut
    Salut,

    Citation Envoyé par koeglerjojo Voir le message
    que pensez vous de cela ?
    Et Python, il en pense quoi?

    Il vous faut d'abord choisir avec quoi vous allez lire votre fichier: CSV, numpy, pandas ou "open": c'est vous qui programmez donc c'est à vous de choisir et de justifier ou être convaincu que vous avez fait un bon choix.

    Puis plutôt que de tester si çà fonctionne directement sur le gros fichier de 2Go, vous fabriquez un fichier représentatif (une dizaine de lignes devrait suffire) qui pourra vous servir à tester votre code.

    A la fin, soit çà fonctionne et vous essayez sur le gros fichier, soit çà ne fonctionne pas et vous avez un code, un fichier de test à poster ainsi qu'expliquer ce que çà ne fait pas.

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  7. #7
    Membre émérite

    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
    Points : 2 328
    Points
    2 328
    Par défaut
    Citation Envoyé par koeglerjojo Voir le message
    Bonjour, j'ai 10 colonnes : date YYYY/MM/DD
    nano
    num
    lat
    lon
    nbloc
    numloc
    icloud
    amplitude
    maxis

    ce sont toutes des colonnes de nombres.

    Cordialement
    Ok 10 colonnes, mais cela ne nous renseigne pas sur la nature de ces colonnes (types de données ?). Poster les 10 premières lignes que l'on voit. Vous pouvez d'ailleurs même créer un fichier qui ne contient que les 10 premières lignes du gros, et faites vos tests sur ce petit fichier comme le suggère wiztricks.

  8. #8
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2018
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2018
    Messages : 8
    Points : 2
    Points
    2
    Par défaut
    Citation Envoyé par lg_53 Voir le message
    Ok 10 colonnes, mais cela ne nous renseigne pas sur la nature de ces colonnes (types de données ?). Poster les 10 premières lignes que l'on voit. Vous pouvez d'ailleurs même créer un fichier qui ne contient que les 10 premières lignes du gros, et faites vos tests sur ce petit fichier comme le suggère wiztricks.
    Bonjour, voici les premières lignes :

    2017-11-13 00:00:03+00 137374208 19118686 44.0103 7.859 3 1 t 4.14 1.322
    2017-11-13 00:00:03+00 138557952 19118686 43.9...
    2017-11-13 00:00:03+00 355469568 19118686 43.9...
    2017-11-13 00:00:40+00 251053056 19118690 45.7...
    2017-11-13 00:00:40+00 439703296 19118690 45.7...
    2017-11-13 00:12:16+00 508960256 19118786 43.8...
    2017-08-26 00:00:01+00 844836608 16780761 49.9...
    2017-08-26 00:00:02+00 498824704 16780762 49.9...
    2017-08-26 00:00:02+00 672281600 16780762 49.9...
    2017-08-26 00:00:03+00 810752000 16780763 49.9...
    2017-08-26 00:00:04+00 787404800 16780764 50.0...
    2017-08-26 00:00:05+00 311755776 16780765 49.9...

    De plus après avoir fais le filtrage, comment peut on séparer la colonne 1 en 2 colonnes pour avoir 2017-11-13 & 00:00:03+00 séparé.

    En fait j'ai un soucis c'est que pour lui c'est une seule colonne [25919302 rows x 1 columns]

    MERCI d'avance pour votre aide

  9. #9
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 240
    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 240
    Points : 36 696
    Points
    36 696
    Par défaut
    Citation Envoyé par koeglerjojo Voir le message
    Bonjour, voici les premières lignes
    Et dans le programme de test que vous avez essayé (mais omis de poster) comment avez vous traité les lignes qui se terminent par "..." ?

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  10. #10
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2018
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2018
    Messages : 8
    Points : 2
    Points
    2
    Par défaut
    Citation Envoyé par wiztricks Voir le message
    Et dans le programme de test que vous avez essayé (mais omis de poster) comment avez vous traité les lignes qui se terminent par "..." ?

    - W
    les ... c'est l'affichage python sinon dans le fichier de données, elles sont complètes comme la première ligne.

    Cordialement

  11. #11
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 240
    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 240
    Points : 36 696
    Points
    36 696
    Par défaut
    Citation Envoyé par koeglerjojo Voir le message
    les ... c'est l'affichage python sinon dans le fichier de données, elles sont complètes comme la première ligne.
    Postez le code qui fait cet affichage là, car c'est pas du Python standard mais plutôt du numpy ou du panda (et çà on ne va pas l'inventer). Postez aussi le fichier de données car ceux qui voudront s'amuser avec pour vous donner une solution ne vont pas se le taper à la main.

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

Discussions similaires

  1. Réponses: 0
    Dernier message: 25/11/2010, 11h12
  2. [Lucene] appliquer un filtre
    Par maximus001ma dans le forum API standards et tierces
    Réponses: 5
    Dernier message: 08/02/2006, 17h45
  3. Appliquer un filtre à un TshellListView
    Par Phébus dans le forum Composants VCL
    Réponses: 2
    Dernier message: 20/10/2005, 09h09
  4. Appliquer un filtre depuis liste déroulante
    Par samlepiratepaddy dans le forum Access
    Réponses: 6
    Dernier message: 20/10/2005, 08h43
  5. Appliquer un filtre à la source d'un contrôle
    Par marchand_de_sable dans le forum Access
    Réponses: 15
    Dernier message: 11/08/2005, 16h56

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