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 :

conditions sur des éléments d'un array numpy


Sujet :

Calcul scientifique Python

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2021
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 94
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2021
    Messages : 6
    Points : 7
    Points
    7
    Par défaut conditions sur des éléments d'un array numpy
    Bonjour tout le monde,

    Jusqu'à présent j'utilisais python uniquement pour tracer des courbes de manière automatique. Habitué à fortran pour le calul, il y a un truc qui ne veut pas rentrer lorsque je veux manipuler un tableau numpy.

    Voici ce que j'aimerais faire : j'ai un fichier de données qui contient 4 colonnes :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    ID x  y  z
    1  x1 y1 z1
    2  x2 y2 z2
    etc.
    En gros, pour chaque ID je voudrais tester s'il existe un autre ID qui se trouve à une distance inférieure à un seuil : sqrt(x²+y²+z²) < seuil, avec x y et z les différences entre les coordonnées des deux ID considérés. Si la distance est inférieure, je veux créer un tableau :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ID x y z nombre_de_ID_inférieurs_au_seuil
    pour pouvoir ensuite tracer un histogramme en fonction de la position. (si ce je ne suis pas clair, je pourrais détailler un peu plus)

    En fortran je ferais deux boucles sur les ID et je calculerais la distance entre tous les ID et via un compteur j'ajouterais le nombre d'ID répondant au critère dans une 4e colonne du tableau. J'imagine que ça fonctionnerait en Python aussi. Le hic c'est que mes fichiers sont énormes (plusieurs dizaines de Go) et ça va prendre 3 plombes si je le fais de cette manière en Python. Je sais qu'il faut éviter ce genre de boucle, mais je n'arrive pas à comprendre la syntaxe.

    Merci d'avance !

  2. #2
    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
    1) Présentez un code déjà, et faites vos mesure en considérant juste un point et chercher tout les points dans un certain voisinage de ce point. Et là vous pouvez mesurer un temps de calcul, et estimer combien de temps ca prendra sur toute votre base de données.

    2) Autrement np.where pourra vous aider.

    3) Et sinon même en étant plus malin et en googlisant votre recherche, on voit que c'est un besoin qui à déjà été résolu :
    https://stackoverflow.com/questions/...cific-distance

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2021
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 94
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2021
    Messages : 6
    Points : 7
    Points
    7
    Par défaut
    Super merci beaucoup ! J'avais cherché mais visiblement pas utilisé les bons termes de recherche.

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

Discussions similaires

  1. Réponses: 5
    Dernier message: 15/04/2008, 11h20
  2. EXCEL SOMME.SI avec condition sur des dates
    Par cfhal dans le forum Excel
    Réponses: 7
    Dernier message: 15/10/2007, 08h21
  3. [XSD] comment faire des tests sur des éléments
    Par attila771 dans le forum Valider
    Réponses: 1
    Dernier message: 11/10/2007, 12h32
  4. travaillez sur des élément ayant le même id
    Par pierreonxbox dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 07/06/2007, 17h29
  5. condition sur des checkbox
    Par bogsy15 dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 09/08/2006, 09h28

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