Comment lire un fichier CSV dans une Dataframe avec un délimiteur personnalisé dans Pandas ?

Afficher la discussion

Améliorer l’article

Enregistrer l’article

J’aime l’article

Afficher la discussion

Améliorer l’article

Enregistrer l’article

J’aime l’article

Python est un bon langage pour effectuer des analyses de données en raison de l’incroyable écosystème de packages python centrés sur les données. pandas package est l’un d’entre eux et facilite grandement l’importation et l’analyse des données.
Ici, nous verrons comment charger un fichier csv dans un Dataframe. Il se fait à l’aide d’un méthode pandas.read_csv(). Nous devons importer pandas bibliothèque pour utiliser cette méthode.

Syntaxe: pd.read_csv(filepath_or_buffer, sep=’, ‘, delimiter=None, header=’infer’, names=None, index_col=None, usecols=None, squeeze=False, prefix=None, mangle_dupe_cols=True, dtype=None, moteur=Aucun, convertisseurs=Aucun, true_values=Aucun, false_values=Aucun, skipinitialspace=Faux, skiprows=Aucun, nrows=Aucun, na_values=Aucun, keep_default_na=Vrai, na_filter=Vrai, verbose=Faux, skip_blank_lines=Vrai, parse_dates= Faux, infer_datetime_format=Faux, keep_date_col=Faux, date_parser=Aucun, dayfirst=Faux, iterator=Faux, chunksize=Aucun, compression=’infer’, milliers=Aucun, decimal=b’.’, lineterminator=Aucun, quotechar=” ”’, quoting=0, escapechar=None, comment=None, encoding=None, dialect=None, tupleize_cols=None, error_bad_lines=True, warn_bad_lines=True, skipfooter=0, doublequote=True, delim_whitespace=False, low_memory=True , memory_map=Faux, float_precision=Aucun)

Quelques paramètres utiles sont donnés ci-dessous :

Paramètre Utilisation
filepath_or_buffer URL ou emplacement Dir du fichier
sep Représente le séparateur, la valeur par défaut est ‘, ‘ comme dans csv (valeurs séparées par des virgules)
index_col Ce paramètre est utilisé pour faire passer la colonne comme index au lieu de 0, 1, 2, 3…r
entête Ce paramètre est utilisé pour créer des lignes passées[int/int list] comme en-tête
use_cols Ce paramètre utilise uniquement la colonne passée[string list] créer une trame de données
presser Si True et qu’une seule colonne est transmise, renvoie la série pandas
sauts Ce paramètre est utilisé pour ignorer les lignes transmises dans le nouveau bloc de données
saut de page Ce paramètre est utilisé pour ignorer le nombre de lignes en bas du fichier

Cette méthode utilise la virgule ‘, ‘ comme délimiteur par défaut, mais nous pouvons également utiliser un délimiteur personnalisé ou une expression régulière comme séparateur.
Pour télécharger les fichiers csv Cliquez ici
Exemple 1 : Utilisation de la méthode read_csv() avec le séparateur par défaut, c’est-à-dire la virgule (, )

Python3

import pandas as pd

df = pd.read_csv("example1.csv')

df

Production:

fichier csv avec virgule

Exemple 2 : Utilisation de la méthode read_csv() avec ‘_’ comme délimiteur personnalisé.

Python3

import pandas as pd

df = pd.read_csv('example2.csv',

                   sep = '_',

                   engine = 'python')

df

Production:

fichier csv avec trait de soulignement

Noter:Tout en donnant un spécificateur personnalisé, nous devons spécifier engine=’python’ sinon nous pourrions recevoir un avertissement comme celui donné ci-dessous :

avertissement moteur pandas

Exemple 3 : Utilisation de la méthode read_csv() avec tabulation comme délimiteur personnalisé.

Python3

import pandas as pd

df = pd.read_csv('example3.csv',

                   sep = '\t',

                   engine = 'python')

df

Production:

fichier csv avec trait de soulignement

Exemple 4 : Utilisation de la méthode read_csv() avec une expression régulière comme délimiteur personnalisé.
Supposons que nous ayons un fichier csv avec plusieurs types de délimiteurs comme indiqué ci-dessous.

totalbill_tip, sexe : fumeur, jour_heure, taille
16.99, 1.01 : Femme|Non, Dim, Dîner, 2
10.34, 1.66, Homme, Non|Dim : Dîner, 3
21.01:3.5_Homme, Non :Dim, Dîner, 3
23.68, 3.31, Homme|Non, Dim_Dîner, 2
24.59:3.61, Femme_Non, Dim, Dîner, 4
25.29, 4.71|Homme, Non :dim, dîner, 4

Pour charger un tel fichier dans une trame de données, nous utilisons une expression régulière comme séparateur.

Python3

import pandas as pd

df = pd.read_csv('example4.csv',

                   sep = '[:, |_]',

                   engine = 'python')

df

Production:

fichier csv avec expression régulière

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *