Maison >développement back-end >Tutoriel Python >Comment analyser des données avec des séparateurs irréguliers dans Pandas read_csv ?

Comment analyser des données avec des séparateurs irréguliers dans Pandas read_csv ?

Susan Sarandon
Susan Sarandonoriginal
2024-10-22 08:18:02940parcourir

How Do I Parse Data with Irregular Separators in Pandas read_csv?

Surmonter les séparateurs irréguliers dans Pandas read_csv

Lors de la lecture de données à partir de fichiers avec des séparateurs irréguliers, la méthode pandas read_csv peut rencontrer des difficultés. Contrairement à la méthode Python split(), qui gère de manière transparente différents espaces, read_csv peut avoir du mal à déchiffrer les données séparées par des espaces et des tabulations incohérentes.

Pour relever ce défi, pandas propose des options polyvalentes pour définir des séparateurs. Une approche consiste à utiliser des expressions régulières (regex). En utilisant le paramètre delimiter dans read_csv, vous pouvez spécifier un modèle d'expression régulière qui capture les séparateurs souhaités. Cela vous permet de prendre en compte les combinaisons d'espaces et de tabulations, garantissant ainsi une analyse précise.

Vous pouvez également exploiter le paramètre delim_whitespace, qui fonctionne de manière similaire à la méthode Python split(). En définissant delim_whitespace sur True, les pandas traiteront tout espace (y compris les espaces et les tabulations) comme séparateur. Cela élimine le besoin de spécifier un modèle d'expression régulière spécifique.

Considérons l'exemple suivant :

import pandas as pd

data = pd.read_csv("irregular_separators.csv", header=None, delimiter=r"\s+")

print(data)

# Output:
#   0  1  2  3  4
# 0  a  b  c  1  2
# 1  d  e  f  3  4

Dans ce cas, irregulier_separators.csv contient des colonnes séparées par des tabulations, des espaces et même des combinaisons de les deux. En spécifiant le modèle regex, read_csv analyse avec succès les données et crée un DataFrame.

Alternativement, en utilisant delim_whitespace :

data = pd.read_csv("irregular_separators.csv", header=None, delim_whitespace=True)

print(data)

# Output (same as above):
#   0  1  2  3  4
# 0  a  b  c  1  2
# 1  d  e  f  3  4

En tirant parti de la flexibilité des séparateurs dans read_csv, vous pouvez gérer efficacement les irrégularités espaces dans les fichiers de données et extraire des informations significatives pour l'analyse.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn