Python - Traitement des données CSV

La lecture de données à partir de CSV (valeurs séparées par des virgules) est une nécessité fondamentale en Data Science. Souvent, nous obtenons des données de diverses sources qui peuvent être exportées au format CSV afin qu'elles puissent être utilisées par d'autres systèmes. La bibliothèque Panadas fournit des fonctionnalités grâce auxquelles nous pouvons lire le fichier CSV dans son intégralité ainsi que par parties pour un groupe sélectionné de colonnes et de lignes.

Entrée en tant que fichier CSV

Le fichier csv est un fichier texte dans lequel les valeurs des colonnes sont séparées par une virgule. Considérons les données suivantes présentes dans le fichier nomméinput.csv.

Vous pouvez créer ce fichier à l'aide du bloc-notes Windows en copiant et en collant ces données. Enregistrez le fichier sousinput.csv en utilisant l'option Enregistrer sous tous les fichiers (*. *) dans le bloc-notes.

id,name,salary,start_date,dept
1,Rick,623.3,2012-01-01,IT
2,Dan,515.2,2013-09-23,Operations
3,Tusar,611,2014-11-15,IT
4,Ryan,729,2014-05-11,HR
5,Gary,843.25,2015-03-27,Finance
6,Rasmi,578,2013-05-21,IT
7,Pranab,632.8,2013-07-30,Operations
8,Guru,722.5,2014-06-17,Finance

Lire un fichier CSV

le read_csvLa fonction de la bibliothèque pandas est utilisée pour lire le contenu d'un fichier CSV dans l'environnement python en tant que DataFrame pandas. La fonction peut lire les fichiers à partir du système d'exploitation en utilisant le chemin d'accès approprié au fichier.

import pandas as pd
data = pd.read_csv('path/input.csv')
print (data)

Lorsque nous exécutons le code ci-dessus, cela produit le résultat suivant. Veuillez noter comment une colonne supplémentaire commençant par zéro comme index a été créée par la fonction.

id    name  salary  start_date        dept
0   1    Rick  623.30  2012-01-01          IT
1   2     Dan  515.20  2013-09-23  Operations
2   3   Tusar  611.00  2014-11-15          IT
3   4    Ryan  729.00  2014-05-11          HR
4   5    Gary  843.25  2015-03-27     Finance
5   6   Rasmi  578.00  2013-05-21          IT
6   7  Pranab  632.80  2013-07-30  Operations
7   8    Guru  722.50  2014-06-17     Finance

Lecture de lignes spécifiques

le read_csvLa fonction de la bibliothèque pandas peut également être utilisée pour lire certaines lignes spécifiques pour une colonne donnée. Nous découpons le résultat de la fonction read_csv en utilisant le code ci-dessous pour les 5 premières lignes de la colonne nommée salaire.

import pandas as pd
data = pd.read_csv('path/input.csv')

# Slice the result for first 5 rows
print (data[0:5]['salary'])

Lorsque nous exécutons le code ci-dessus, cela produit le résultat suivant.

0    623.30
1    515.20
2    611.00
3    729.00
4    843.25
Name: salary, dtype: float64

Lecture de colonnes spécifiques

le read_csvLa fonction de la bibliothèque pandas peut également être utilisée pour lire certaines colonnes spécifiques. Nous utilisons la méthode d'indexation multi-axes appelée.loc()dans ce but. Nous choisissons d'afficher la colonne salaire et nom pour toutes les lignes.

import pandas as pd
data = pd.read_csv('path/input.csv')

# Use the multi-axes indexing funtion
print (data.loc[:,['salary','name']])

Lorsque nous exécutons le code ci-dessus, cela produit le résultat suivant.

salary    name
0  623.30    Rick
1  515.20     Dan
2  611.00   Tusar
3  729.00    Ryan
4  843.25    Gary
5  578.00   Rasmi
6  632.80  Pranab
7  722.50    Guru

Lecture de colonnes et de lignes spécifiques

le read_csvLa fonction de la bibliothèque pandas peut également être utilisée pour lire certaines colonnes et lignes spécifiques. Nous utilisons la méthode d'indexation multi-axes appelée.loc()dans ce but. Nous choisissons d'afficher la colonne salaire et nom pour certaines des lignes.

import pandas as pd
data = pd.read_csv('path/input.csv')

# Use the multi-axes indexing funtion
print (data.loc[[1,3,5],['salary','name']])

Lorsque nous exécutons le code ci-dessus, cela produit le résultat suivant.

salary   name
1   515.2    Dan
3   729.0   Ryan
5   578.0  Rasmi

Lecture de colonnes spécifiques pour une plage de lignes

le read_csvLa fonction de la bibliothèque pandas peut également être utilisée pour lire certaines colonnes spécifiques et une plage de lignes. Nous utilisons la méthode d'indexation multi-axes appelée.loc()dans ce but. Nous choisissons d'afficher la colonne salaire et nom pour certaines des lignes.

import pandas as pd
data = pd.read_csv('path/input.csv')

# Use the multi-axes indexing funtion
print (data.loc[2:6,['salary','name']])

Lorsque nous exécutons le code ci-dessus, cela produit le résultat suivant.

salary    name
2  611.00   Tusar
3  729.00    Ryan
4  843.25    Gary
5  578.00   Rasmi
6  632.80  Pranab