0% ont trouvé ce document utile (0 vote)
3 vues4 pages

Regex 4

Ce document présente des techniques de manipulation de chaînes avec la bibliothèque Pandas en Python. Il couvre des exemples pratiques tels que le nettoyage de données, l'extraction d'informations à l'aide d'expressions régulières et l'agrégation de données textuelles. À la fin, les lecteurs devraient être capables d'appliquer ces concepts pour traiter efficacement des données textuelles dans des DataFrames.

Transféré par

ZOUHIR MSAADI
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
3 vues4 pages

Regex 4

Ce document présente des techniques de manipulation de chaînes avec la bibliothèque Pandas en Python. Il couvre des exemples pratiques tels que le nettoyage de données, l'extraction d'informations à l'aide d'expressions régulières et l'agrégation de données textuelles. À la fin, les lecteurs devraient être capables d'appliquer ces concepts pour traiter efficacement des données textuelles dans des DataFrames.

Transféré par

ZOUHIR MSAADI
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Exemples : Manipulation de cordes avec Pandas

Dans ce carnet, nous revenons à la bibliothèque Pandas, cette fois en examinant spécifiquement des
fonctionnalités destinées à la manipulation de chaînes.

Objectifs d’apprentissage
À la fin de ce carnet, vous devriez pouvoir :

Comprenez comment appliquer Pandas pour manipuler des chaînes en Python.

Exemples
Voyons comment Pandas, une puissante bibliothèque Python, peut être utilisée pour manipuler des chaînes
de caractères au sein des DataFrames et des séries. Cela s’appuie sur nos connaissances de la règle
régulière Python, en introduisant comment ces concepts peuvent être appliqués avec Pandas.

Exemple 1
Scénario : Supposons qu’on nous ait donné un ensemble de données de différentes espèces végétales
recensées dans un parc national. Les noms des espèces sont formatés de manière incohérente avec des
espaces en tête et en fin et en lettres majuscules variables.

Question : Nettoyez la colonne « espèce » en supprimant les espaces en avant/fin et en convertissant tous
les noms en minuscules.

Solution :
Dans [ ] : import pandas as pd

# Sample data
data = {'species': [' Maple (10 years) ', 'oak', 'Pine(3 years)', 'maple
', ' Oak (1.5 Years)']}
df = [Link](data)

# Cleaning the 'species' column


df['species'] = df['species'].[Link]().[Link]()
print(df)

Explication : Nous isolaons d’abord la colonne qui doit être formatée, . Cette fonction sert à supprimer les
espaces avant et fin de la séance. convertit tous les caractères de la chaîne en minuscules. Ces méthodes
sont enchaînées pour effectuer les deux opérations sur une seule ligne. La sortie est renvoyée sous la même
colonne dans le DataFrame. species strip() lower()

Exemple 2
Scénario : Dans notre jeu de données, certaines espèces ont leur âge mentionné en années entre
parenthèses (par exemple « Érable (10 ans) »).

Question : Utilisez un régulateur régulier pour extraire l’âge en années du nom de l’espèce et créer une
nouvelle colonne « âge ». Remplissez avec « Inconnu » s’il n’y a pas d’âge présent.

Dans [ ] : # Extracting age using regular expression


df['age'] = df['species'].[Link]('(\d+\.\d+|\d+)').fillna("Unknown")
print(df)

Explication :

L’expression régulière est utilisée ici. Cette règle régulière se compose de deux parties : (\d+\.\d+|\d+)

\d+\.\d+ correspond à une séquence de chiffres suivie d’un virgule puis d’une autre séquence de
chiffres, capturant les chiffres décimaux.
\d+ correspond à une séquence de chiffres, capturant des nombres entiers.

L’opérateur dans le regex signifie « ou », donc l’expression cherche soit un nombre décimal, soit un nombre
entier. est utilisé pour traiter les cas où aucune information d’âge n’est trouvée dans le nom de
l’espèce. | fillna("Unknown")

Exemple 3
Scénario : Après avoir nettoyé le jeu de données, nous voulons savoir combien d’espèces uniques sont
enregistrées et leurs décomptes respectifs.

Question : Agréger les données pour compter le nombre d’occurrences de chaque espèce unique.
Dans [ ] : # Clean and standardise species names
df['species'] = df['species'].[Link]('([a-zA-Z]+)', expand=False).fil
lna('').[Link]().[Link]()

# Counting occurrences of each species


species_counts = df['species'].value_counts()
print(species_counts)

Explication :

1. df['species'] est utilisé pour accéder à la colonne « espèces » sous forme de Série.
2. .[Link]('([a-zA-Z]+)', expand=False) est appliqué directement à la colonne « espèce »
pour extraire les caractères alphabétiques, et sert à garantir qu’il reste une Série. expand=False
3. Les opérations de chaîne suivantes sont appliquées directement à la série « espèces ».
(fillna('').[Link]().[Link]())
4. Enfin, est utilisé pour compter les occurrences de chaque espèce unique dans la série « espèces
». value_counts()

Exemple 4
Scénario : Les autorités du parc souhaitent regrouper les espèces par leur première lettre afin de concevoir
différentes zones dans le parc.

Question : Créez une nouvelle colonne « zone » basée sur la première lettre de chaque nom d’espèce et
regroupez le DataFrame selon cette nouvelle colonne.

Dans [ ] : # Creating a 'zone' column based on the first letter


df['zone'] = df['species'].str[0]
grouped_data = [Link]('zone').size()
print(grouped_data)

La colonne est créée en extrayant la première lettre de chaque nom d’espèce en utilisant . Ensuite, la
fonction sert à regrouper le DataFrame par la colonne « zone », et sert à compter le nombre d’entrées dans
chaque groupe. La fonction retournerait une réponse similaire, mais les colonnes et seraient toutes deux
renvoyées sous forme de DataFrame. zone str[0] groupby size() count() species age

Résumé
Et avec cela, nous avons été initiés aux concepts clés liés à la manipulation et à l’analyse de données
textuelles à l’aide de la bibliothèque Pandas en Python. Nous avons abordé des techniques telles que le
nettoyage et la standardisation des données textuelles, l’extraction d’informations à l’aide d’expressions
régulières, et l’agrégation des données à partir de motifs textuels. Ces concepts nous permettront de traiter
efficacement et d’obtenir des informations textuelles au sein des DataFrames.

Vous aimerez peut-être aussi