pandas python: supprimez les doublons par colonnes A, en conservant la ligne avec la valeur la plus élevée dans la colonne B
J'ai un dataframe avec des valeurs de répétition dans la colonne A. Je veux supprimer les doublons, en conservant la ligne avec la valeur la plus élevée dans la colonne B.
Donc ça:
A B
1 10
1 20
2 30
2 40
3 10
Devrait se transformer en ceci:
Wes a ajouté quelques fonctionnalités intéressantes pour supprimer les doublons:. Mais AFAICT, il est conçu pour les doublons exacts, il n'y a donc aucune mention de critères pour sélectionner les lignes à conserver. Je suppose qu'il y a probablement un moyen facile de le faire - peut-être aussi simple que de trier le dataframe avant de supprimer les doublons - mais je ne connais pas assez bien la logique interne de groupby pour le comprendre. Aucune suggestion? Supprimer des doublons de phrases par debutant_python - OpenClassrooms. Réponses:
Cela prend le dernier. Pas le maximum cependant:
In [ 10]: df. drop_duplicates ( subset = 'A', keep = "last")
Out [ 10]:
1 1 20
3 2 40
4 3 10
Vous pouvez également faire quelque chose comme:
In [ 12]: df.
- Supprimer les doublons python c
- Aide au permis de conduire pas de calais map
Supprimer Les Doublons Python C
Quant à writelines, je l'avais oublié celui-là. Et là aussi c'est surement bien plus performant que de jointer les lignes en une chaîne de caractères. GG84 a écrit:
C'est toujours intéressant de se questionner sur les performances d'un algo (aussi simple soit-il). Par exemple, ici ta question de base concernait la suppression des doublons dans une séquence de données, la première chose à ce demander - et en l'occurrence j'ai oublié de le faire - c'est de définir quelle est la meilleur structure de données pour représenter et traiter cette séquence. Les listes ne sont clairement pas une bonne idée, elles sont lentes et gourmande en mémoire, alors que les sets, en plus d'être plus légères, sont tout indiqués pour représenter une séquence dont chaque élément est unique. 16 janvier 2014 à 11:55:14
Effectivement, les sets sont plus rapides merci pour toutes vos réponses, et vos conseils. J'insiste, mais... Supprimer les doublons python c. est-il possible de gérer les exceptions? Merci beaucoup a vous deux,
16 janvier 2014 à 13:14:03
On peut être plus précis dans la gestion des erreurs:
# open...
except FileNotFoundError:
# Si le fichier est introuvable
except PermissionError:
# L'utilisateur n'a pas le droit d'écrire et/ou de lire le fichier ou le dossier
PS: documentation de Python.
En mode interactif (le shell python), vu qu'aucune variable ne récupère ce nombre, le retour de la fonction est affiché (c'est le fonctionnement du shell Python). 15 janvier 2014 à 19:25:17
Merci de l'info. Par contre, savez vous pourquoi ceci marche en mode shell et pas en mode "normal"? filename = input('Entrer le nom du script: ')
print ('Code de l\'erreur: ', err)
print ('Le fichier n\'existe probablement pas')
Et pour gérer les exceptions? fred1599 > je vais regarder ca, merci. EDIT: Pardonnez moi, je suis un abruti. Je lançais le mauvais fichier x)
Voici le code final si il y a des intéressés:
filename = input('Entrer le nom du fichier: ')
print ('\n\nLes lignes en doublons ont correctement été enlevées. \n\n')
print ('Erreur! Pandas python: supprimez les doublons par colonnes A, en conservant la ligne avec la valeur la plus élevée dans la colonne B. \n\nCode de l\'erreur: \n', err, '\n\n')
print ('Le fichier n\'existe probablement pas\n\n')
- Edité par Vaslyn 15 janvier 2014 à 19:55:08
15 janvier 2014 à 19:58:41
ls = set()
Non testé! 15 janvier 2014 à 21:21:35
filename = input("file: ")
with open(filename) as file:
lines = set(adlines())
(''(lines))
except IOError as e:
print(e)
input("... ")
Quitte à utiliser un set (très bonne idée), autant en profiter pour faire court.
Si vous avez entre 18 et 25 ans, vous habitez le Département du Pas-de-Calais, vous avez un projet d'insertion, mais vous manquez de moyens: découvrez le Fonds d'Aide aux Jeunes. Vous avez entre 18 et 25 ans? Vous habitez le Département du Pas-de-Calais? Vous avez un projet d'insertion? Mais vous manquez de moyens? Aide permis Département – Espace Numérique pour les jeunes. Découvrez le Fonds d'Aide aux Jeunes. Le FAJ, c'est quoi? Le Fonds d'Aide aux Jeunes est un dispositif financé et géré par le Conseil départemental. Il vous permet de constituer avec un référent un dossier de demande d'aide financière pour être aidé, accompagné et orienté dans les diverses démarches que vous avez à effectuer. Cette aide financière vous permet de réaliser votre projet d'insertion, si vous êtes en difficulté. Le FAJ, c'est pour moi? Le FAJ peut vous permettre de réaliser votre projet d'insertion
si vous avez entre 18 et 25 ans
si vous avez 16 ans et êtes en cours de démarche d'insertion professionnelle, en contrat d'apprentissage
Le FAJ, en fonction de mes ressources?
Aide Au Permis De Conduire Pas De Calais Map
Attention, l'organisme d'accueil doit être une association du Pas-de-Calais dans les thématiques suivantes: jeunesse, éducation populaire, culturelle, artistique, sportive, environnementale ou caritative Il s'agit par exemple des Restos du Cœur, de la SPA, du Secours Populaire, d'Emmaüs, de La Croix Rouge française, etc. Avec la fermeture des auto-écoles, un grand nombre de jeunes étaient en attente pour faire leur demande. Bonne nouvelle: des aides supplémentaires de 400 euros sont proposées permettant de profiter de la réouverture des auto-écoles. Il faut impérativement constituer son dossier avant le 15 décembre. Cet article vous a été utile? Aide au permis de conduire pas de calais nyc. Sachez que vous pouvez suivre Actu Pas-de-Calais dans l'espace Mon Actu. En un clic, après inscription, vous y retrouverez toute l'actualité de vos villes et marques favorites.
Plus d'information via
Liste des « Maison du Département Solidarité MDS » via