111 votes

Obtenir la dernière "colonne" après l'opération .str.split() sur une colonne dans un DataFrame pandas

J'ai une colonne dans un DataFrame pandas que je voudrais diviser sur un seul espace. La division est assez simple avec DataFrame.str.split(' ') mais je ne peux pas créer une nouvelle colonne à partir de la dernière entrée. Lorsque je .str.split() la colonne, j'obtiens une liste de tableaux et je ne sais pas comment la manipuler pour obtenir une nouvelle colonne pour mon DataFrame.

Voici un exemple. Chaque entrée de la colonne contient "symbol data price" et je voudrais séparer le prix (et éventuellement supprimer le "p"... ou le "c" dans la moitié des cas).

import pandas as pd
temp = pd.DataFrame({'ticker' : ['spx 5/25/2001 p500', 'spx 5/25/2001 p600', 'spx 5/25/2001 p700']})
temp2 = temp.ticker.str.split(' ')

ce qui donne

0    ['spx', '5/25/2001', 'p500']
1    ['spx', '5/25/2001', 'p600']
2    ['spx', '5/25/2001', 'p700']

Mais temp2[0] donne juste le tableau d'une entrée de liste et temp2[:][-1] échoue. Comment puis-je convertir la dernière entrée de chaque tableau en une nouvelle colonne ? Merci !

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X