3 votes

Python : Comment diviser une valeur en colonne à l'aide d'une expression rationnelle et conserver le côté droit ?

J'essaie de nettoyer une colonne dans mon cadre de données qui contient le nombre à côté de la taille (ex : 12X350). J'essaie d'obtenir uniquement le côté droit du X, qui correspond à la taille. Mais j'ai quelques problèmes.

import pandas as pd 
data = [['product1', '13X255'], ['product2', "2"], ['product3', "500"]] 
df = pd.DataFrame(data, columns = ['Product', 'Size'])  
df 

    Product     Size
0   product1    13X255
1   product2    2
2   product3    500

L'utilisation de cette séparation de chaîne avec regex permet d'obtenir ce dont j'ai besoin mais remplit les valeurs avec

df['Size'].str.split(r'[A-Z]', n =1, expand = True)
    0   1
0   13  255
1   2   None
2   500 None

Le résultat souhaité que j'aimerais avoir :

    Product     Size
0   product1    255
1   product2    2
2   product3    500

Toute aide serait grandement appréciée. 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