"Si un ouvrier veut bien faire son travail, il doit d'abord affûter ses outils." - Confucius, "Les Entretiens de Confucius. Lu Linggong"
Page de garde > La programmation > Comment extraire des nombres à partir de chaînes non numériques dans Pandas ?

Comment extraire des nombres à partir de chaînes non numériques dans Pandas ?

Publié le 2024-11-10
Parcourir:731

How to Extract Numbers from Non-Numeric Strings in Pandas?

Pandas : extraire des nombres à partir de chaînes

Lorsque vous travaillez avec des blocs de données dans Pandas, il est souvent nécessaire d'extraire des informations numériques à partir de cellules qui contiennent des éléments non -caractères numériques. Cela peut être difficile, mais Pandas propose plusieurs méthodes pour vous aider à y parvenir.

Utiliser str.extract() pour l'extraction de nombres

Une méthode efficace pour extraire des nombres de les chaînes sont str.extract(). Cette méthode vous permet de spécifier un modèle d'expression régulière qui définit les données numériques que vous souhaitez capturer.

Considérez le bloc de données suivant :

import pandas as pd
import numpy as np
df = pd.DataFrame({'A':['1a',np.nan,'10a','100b','0b'],
                   })
print(df)

Sortie :

    A
0   1a
1   NaN
2   10a
3   100b
4   0b

Pour extraire les nombres de chaque cellule, vous pouvez utiliser l'expression régulière suivante :

df.A.str.extract('(\d )')

Le modèle regex (\d ) capture toute séquence d'un ou plusieurs chiffres. Les parenthèses autour du motif créent un groupe de capture, qui est utilisé pour renvoyer la partie correspondante de la chaîne.

Sortie :

0      1
1    NaN
2     10
3    100
4      0
Name: A, dtype: object

Comme vous pouvez le constater, les nombres souhaités ont été extraits avec succès de chaque cellule, même ceux qui contenaient des caractères non numériques. Notez que cette méthode ne fonctionnera que pour les nombres entiers et non pour les nombres à virgule flottante.

Déclaration de sortie Cet article est réimprimé à l'adresse : 1729736023. En cas d'infraction, veuillez contacter [email protected] pour le supprimer.
Dernier tutoriel Plus>

Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.

Copyright© 2022 湘ICP备2022001581号-3