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 :

Extraire tableau d'un autre


Sujet :

Calcul scientifique Python

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti Avatar de Youyayouyou
    Femme Profil pro
    Étudiant
    Inscrit en
    Mai 2020
    Messages
    42
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 26
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Mai 2020
    Messages : 42
    Par défaut Extraire tableau d'un autre
    Bonsoir,

    J'ai un ensemble de points de coordonnées (x,y) que j'ai mis dans deux tableaux nommés x et y.
    Chaque coordonnée peut être répétée plusieurs fois dans les tableaux.
    J'ai besoin de créer un tableau où les coordonnées ne figurent qu'une seule fois -je dois les extraire des tableaux x et y-.

    Je vous montre un exemple pour illustrer mon problème:

    x = [1, 5, 4, 7, 1, 6, 7, 4, 4, 5] (Mon 1er tableau des abscisses)
    y = [2, 4, 5, 6, 2, 1, 6, 5, 5, 4] (Mon 2e tableau des ordonnées)

    x_extrait = [1, 5, 4, 7, 6] (Le tableau extrait de x, sans qu'il y ait répétition des abscisses)
    y_extrait = [2, 4, 5, 6, 1] (Le tableau extrait de y, sans qu'il y ait répétition des ordonnées)

    Je voudrais aussi créer un tableau où je mets la répétition de chaque coordonnée, par ex:

    repetition = [2, 2 ,3 ,2 ,1] (Chaque élément de ce tableau représente combien de fois un des éléments de x_extrait est répété dans le tableau x, par exemple: le point x = 1 , y = 2 est répété deux fois; le point x = 6 , y =1 est répété 1 fois ... etc )


    Ça fait deux jours que j'essaye; je fais des boucles et tout mais je n'arrive pas à extraire ce dont j'ai besoin

    Quelqu'un pourrait m'aider s'il vous plaît?

    Je vous remercie

  2. #2
    Membre chevronné
    Homme Profil pro
    BTS SN IR
    Inscrit en
    Mai 2017
    Messages
    514
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 26
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : BTS SN IR

    Informations forums :
    Inscription : Mai 2017
    Messages : 514
    Par défaut
    bonjour,

    pour compter le nombre de répétition vous devriez utiliser un dictionnaire, les clef seront vos nombres et les valeurs le nombre d'occurrence, puis quand on sait faire on ne s'embête plus et on utilise collections.Counter

    pour enlever les doublons vous avez les set, si vous devez conserver l'ordre il faudra utiliser autre chose.

    quel code avez vous pour le moment ?

  3. #3
    Membre Expert
    Homme Profil pro
    Inscrit en
    Octobre 2011
    Messages
    2 910
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Octobre 2011
    Messages : 2 910
    Par défaut
    Salut,

    C'est un problème similaire à celui d'un autre fil où j'avais posté ce code #10 mais dans ce cas on n'avait pas le droit d'utiliser un dico...

    En adaptant un peu à votre cas :
    Code python : 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
    def compte(lst):
     
        lst_nombres = []
        lst_nbr_occurence = []
     
        for nbr in lst:
            if nbr not in lst_nombres:
                lst_nombres.append(nbr)
                lst_nbr_occurence.append(1)
            else:
                indice = lst_nombres.index(nbr)
                lst_nbr_occurence[indice] += 1
     
        # Affichage :
        print(lst_nombres)
        print(lst_nbr_occurence)
        for indice in range(len(lst_nombres)):
            print("Le nombre d’occurrences du nombre:",
                  lst_nombres[indice], "est", lst_nbr_occurence[indice])
     
     
    x = [1, 5, 4, 7, 1, 6, 7, 4, 4, 5]  # (Mon 1er tableau des abscisses)
    y = [2, 4, 5, 6, 2, 1, 6, 5, 5, 4]  # (Mon 2e tableau des ordonnées)
     
    print("----> liste x_extrait")
    compte(x)
    print("----> liste y_extrait")
    compte(y)

    Mais on peut utiliser un dico ou collections.Counter comme l'a suggéré flapili d'ailleurs il y a des exemples de cela dans ce fil :Compter le nombre d’occurrences de chaque mot d'un texte. (sauf que là c'est avec des mots).

  4. #4
    Membre averti Avatar de Youyayouyou
    Femme Profil pro
    Étudiant
    Inscrit en
    Mai 2020
    Messages
    42
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 26
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Mai 2020
    Messages : 42
    Par défaut
    Je vous remercie pour vos réponses

    Merci pour le code Beginner. Ce que je voudrais c'est qu'il m'affiche combien de fois j'ai x=1 et y = 2 (par exemple), car je veux avoir la répétition des coordonnées (x,y). Avec ce code, il m'affiche le nombre d’occurrences de la coordonnée x seule et y seule.
    Comment le modifier?

    Merci d'avance

  5. #5
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 770
    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 770
    Par défaut
    Salut,

    Citation Envoyé par Youyayouyou Voir le message
    Comment le modifier?
    Il n'y a rien à modifier.
    Juste qu'il faut lui passer les objets à compter.
    Si vous voulez compter les occurrences de (1, 2), .... il faut lui passer une liste avec [ (1, 2), .... ] construite à partir des x et des y.

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

  6. #6
    Membre averti Avatar de Youyayouyou
    Femme Profil pro
    Étudiant
    Inscrit en
    Mai 2020
    Messages
    42
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 26
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Mai 2020
    Messages : 42
    Par défaut
    Merci beaucoup !

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

Discussions similaires

  1. Réponses: 3
    Dernier message: 01/09/2018, 20h34
  2. Extraire des données d'un tableau vers un autre onglet
    Par merlinus3000 dans le forum Excel
    Réponses: 3
    Dernier message: 07/06/2015, 20h28
  3. [XL-2013] Extraire d'un tableau vers un autre sous condition en VBA
    Par mkhbeldi dans le forum Excel
    Réponses: 2
    Dernier message: 28/05/2015, 09h12
  4. [XL-2010] Extraire des noms d'un tableau vers un autre tableau
    Par RobertThi dans le forum Excel
    Réponses: 5
    Dernier message: 24/02/2014, 14h48
  5. Pb pour se servir d'un tableau dans une autre unité
    Par libititi dans le forum Langage
    Réponses: 7
    Dernier message: 08/06/2005, 11h40

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