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 :

supprimez les intervalles en double dans la même cellule


Sujet :

Python

  1. #1
    Membre du Club
    Homme Profil pro
    ngénieur d'etat en science géodésique et travaux topographique
    Inscrit en
    Septembre 2016
    Messages
    152
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : ngénieur d'etat en science géodésique et travaux topographique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Septembre 2016
    Messages : 152
    Points : 65
    Points
    65
    Par défaut supprimez les intervalles en double dans la même cellule
    Je veux réaliser quelque chose comme dans l'image ce-dessous supprimez les intervalles en double dans la même cellule dans une colonne en Python, mais pour l'ensemble du dataframe de manière efficace.
    Mes données ressemblent à ceci : c'est un bloc de données de pandas dataframe . Il a des chaînes d'intrvales séparées par des virgules où il y a beaucoup de doublons - et je souhaite supprimer tous les intervalles en doublons dans ces chaînes individuelles.

    Nom : interval.PNG
Affichages : 150
Taille : 12,9 Ko

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

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    >>> L = [ 'A', 'B', 'A' ]
    >>> list(set(L))
    ['B', 'A']
    >>>
    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  3. #3
    Invité
    Invité(e)
    Par défaut
    Mieux encore :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    >>> sorted(set(L))
    ['A', 'B']


    @Sve@r je ne pense pas vu la ligne E mais peut-être ! =)

    C'était un clin d'oeil à l'erreur que tu m'as signalé l'autre jour lorsque je disais que set() triait dans l'ordre. J'ai vu wiztrick utiliser set() j'ai pas pu m'empêcher !

  4. #4
    Expert éminent sénior
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 691
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 12 691
    Points : 30 988
    Points
    30 988
    Billets dans le blog
    1
    Par défaut
    Bonjour

    Citation Envoyé par rabeh.ram Voir le message
    Je veux réaliser quelque chose comme dans l'image ce-dessous supprimez les intervalles en double dans la même cellule dans une colonne en Python
    Dois-tu aussi gérer les chevauchements, style [0-50], [30-80] => [0-80] ???

    Citation Envoyé par LeNarvalo Voir le message
    Mieux encore
    Ouh là... si tu viens taquiner le wiztricks ça va pas trainer...

    Citation Envoyé par LeNarvalo Voir le message
    @Sve@r je ne pense pas vu la ligne E
    Exact effectivement ça semble pas. Je posais la question car j'avais eu ce problème une fois. Bon c'était dans une bdd Postgres et le truc devait gérer à l'insertion. Style il y a [0-50] et on entre [20-30] il refuse car déjà inclus et si on entre [30-80] alors l'info devient [0-80]. Et j'ai résolu le premier cas par un trigger before insert or update et le second par un trigger after insert or update.
    Mais ce que j'ai fait via les triggers peut aussi se faire en Python...

    Citation Envoyé par LeNarvalo Voir le message
    C'était un clin d'oeil à l'erreur que tu m'as signalé l'autre jour lorsque je disais que set() triait dans l'ordre.
    Effectivement set() ne trie pas, et c'est facile à montrer. Mais le PO n'a pas spécifié qu'il voulait la sortie triée...

    Citation Envoyé par LeNarvalo Voir le message
    J'ai vu wiztrick utiliser set() j'ai pas pu m'empêcher !
    Oui c'est compréhensible. Petit plaisir ephémère. Bon ben ensuite ce qui se passera suite à ça faudra assumer. Le wiztricks c'est un peu notre Chuck Norris local quoi. Il a compté jusqu'à l'infini deux fois, il peut claquer des doigts de pieds, et il met son Python où il veut et c'est souvent dans la gueule...
    Mon Tutoriel sur la programmation «Python»
    Mon Tutoriel sur la programmation «Shell»
    Sinon il y en a pleins d'autres. N'oubliez pas non plus les différentes faq disponibles sur ce site
    Et on poste ses codes entre balises [code] et [/code]

Discussions similaires

  1. Réponses: 2
    Dernier message: 21/12/2009, 06h35
  2. Mapper plusieurs Maps<String, Double> dans la même table
    Par griboudou dans le forum Hibernate
    Réponses: 0
    Dernier message: 09/11/2009, 17h15
  3. Réponses: 7
    Dernier message: 06/03/2009, 17h35
  4. Réponses: 1
    Dernier message: 05/10/2007, 16h56
  5. VB .Net: les intervalles de dates dans ACCESS ?
    Par AzertyH dans le forum Windows Forms
    Réponses: 10
    Dernier message: 15/05/2006, 09h35

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