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