Remove Duplicates and Groupby
Bonjour à tous,
Cela fait 2 bonnes semaines que je code en python. J'ai pas mal progressé mais il m'arrive encore de rester bloquer sur des choses simples. Dans ce cas-ci ça fait plusieurs heures que je te testes plein de truc sur un exemple simple mais rien n'a faire. Je n'arrive pas à avoir ce que je veux.
Mon problème est le suivant :
j'ai un fichier .csv avec des adresses emails, domaine et ville.
,email,domain,city
0,g@gmail.com,gmail.com,liege
1,d@hotmail.com,hotmail.com,bruxelle
2,o@yahoo.fr,yahoo.fr,dinant
3,g@msn.be,msn.be,liege
4,p@caramail.be,caramail.be,anvers
5,g@gmail.com,gmail.com,liege
6,a@ulg.ac.be,ulg.ac.be,liege
la première étape à réaliser est d'enlever les doublons (dans l'exemple : 5,g@gmail.com,gmail.com,liege).
J'ai essayer avec , , , un truc avec .... Enfin j'arrive pas a juste l'enlever et avoir un simple tableau du style :
,email,domain,city
0,g@gmail.com,gmail.com,liege
1,d@hotmail.com,hotmail.com,bruxelle
2,o@yahoo.fr,yahoo.fr,dinant
3,g@msn.be,msn.be,liege
4,p@caramail.be,caramail.be,anvers
6,a@ulg.ac.be,ulg.ac.be,liege
(Dans mon cas l'index n'est pas important puisque je le remplacerai par un numero d'identification pour pouvoir faire un lien vers une autre dataframe)
et la deuxième étape est d'extraire le nom de l'adresse email et puis ensuite de les regrouper pour voir si oui ou non, il y'a un même nom pour plusieurs domaines. example:
name,domain,city
g , gmail.com , liege
, msn.be , liege
d , hotmail.com , bruxelle
o , yahoo.fr , dinant
p , caramail.be , anvers
a , ulg.ac.be , liege
Si je regroupe avec ce code :
Code:
df = df.groupby(['email','domain','city'])
j'obtiens une réponse : <pandas.core.groupb.DataFrame object at 0x3ca68c>
<class 'pandas.core.groupby.DataFrameGroupby>
Moi je voudrais qu'il m'affiche par colonne ce que je veux et pas simplement ça. Si j'utilise après ça fonctionne mais il me fait la moyenne des indexes et ça ne m'interesse pas du tout.
De plus, si j'ai d'autres colonnes, je suppose que pour grouper aussi il faut que je les nomme dans le df.groupby?
Je suis sur que la solution est simple mais je ne trouve pas les exemples qui colle à ma situation. Une fois que je l'aurai vu une fois ça ira, mais la je bloque un peu.
Merci de votre aide
Maxime