J'essaie de capturer les domaines de cette liste de messagerie. J'ai des sous-domaines dans l'email et j'essaie de le supprimer. J'ai juste besoin d'une corde avant et après '.' de l'arrière essayé cela et combinaisons de -1, 2: etc p> besoin de sortie comme celui-ci p > ids emails
0 1 gmail.com
1 2 aol.com
2 3
3 4 abc.edu
4 5 abc.edu
5 6
6 7 abc.gov
7 8 test.net
3 Réponses :
En passant Utilisation à la place: P> 1 code> comme deuxième argument sur Split () code> Vous limitez la scission en une. In []: df.emails.str.split(".").str[-2:].str.join(".")
Out[]:
0 gmail.com
1 aol.com
2
3 abc.edu
4 abc.edu
5
6 abc.gov
7 test.net
Name: emails, dtype: object
On dirait que l'OP s'attend à ce que er.abc.edu code> à partir de l'index 4 au lieu de abc.edu code>
On pourrait aussi être capable de s'en sortir avec quelque chose comme: df.emails.stract (r '(\ w + \ \ w + $)') code>
@Jonclements Je pense que vous avez confondu le code PENTUltimate Code dans l'OP pour le dernier.
Essayez ceci
Vous pouvez pré-traiter la liste des e-mails espère que cela aide. p> p>
Pourquoi avez-vous passé 1 comme deuxième argument sur
divisé code>?Donc ... si
. Code> est uniquement présent qu'une seule fois - gardez l'original - sinon - gardez tout après le premier. Code>?