Guide complet pour modifier et mettre à jour des fichiers CSV avec Python : de débutant à avancé

Python est un outil puissant pour la manipulation de données, en particulier lorsqu’il s’agit de modifier et de mettre à jour des fichiers CSV. Dans cet article, nous couvrirons de manière exhaustive la façon d’utiliser Python pour manipuler efficacement des fichiers CSV, que vous soyez débutant ou expert. Des méthodes de base de lecture et d’écriture aux techniques avancées de filtrage et d’agrégation de données, ainsi que la gestion des erreurs, nous expliquerons tout en détail avec des exemples de code pratiques.

Sommaire

Qu’est-ce qu’un fichier CSV ?

Un fichier CSV (Comma-Separated Values) est un format de fichier texte qui stocke les données en les séparant par des virgules. Il est couramment utilisé pour échanger des données issues de bases de données ou de feuilles de calcul. Chaque ligne représente un enregistrement, et chaque colonne représente un champ. Grâce à sa simplicité et à sa grande compatibilité, le format CSV est largement utilisé.

Comment lire un fichier CSV avec Python

Avec Python, il est facile de lire des fichiers CSV en utilisant le module standard csv. Voici une méthode de base pour lire des fichiers CSV.

Lecture des fichiers CSV avec la bibliothèque standard

Commençons par apprendre à lire un fichier CSV en utilisant le module csv de Python.

import csv  

# Spécifier le chemin du fichier CSV  
csv_file_path = 'data.csv'  

# Ouvrir et lire le fichier CSV  
with open(csv_file_path, mode='r', newline='') as file:  
    reader = csv.reader(file)  
    for row in reader:  
        print(row)

Ce code utilise csv.reader pour lire le fichier CSV ligne par ligne et affiche chaque ligne sous forme de liste.

Lire le contenu d’un fichier CSV sous forme de dictionnaire

Ensuite, utilisons csv.DictReader pour lire un fichier CSV sous forme de dictionnaire. Cette méthode utilise la première ligne du fichier CSV comme clés, et chaque ligne de données est traitée comme un dictionnaire.

import csv  

# Spécifier le chemin du fichier CSV  
csv_file_path = 'data.csv'  

# Ouvrir et lire le fichier CSV  
with open(csv_file_path, mode='r', newline='') as file:  
    reader = csv.DictReader(file)  
    for row in reader:  
        print(row)

Dans ce code, chaque ligne est lue comme un dictionnaire, où les clés sont les en-têtes du fichier CSV et les valeurs sont les données correspondantes.

Ces méthodes permettent de lire facilement des fichiers CSV avec Python. Passons maintenant à des opérations plus avancées avec la bibliothèque pandas.

Manipulation des fichiers CSV avec pandas

pandas est une bibliothèque Python conçue pour l’analyse de données, permettant de lire, modifier et écrire des fichiers CSV très facilement. Voici un aperçu des opérations de base avec pandas.

Installer pandas

Si la bibliothèque pandas n’est pas encore installée, utilisez la commande suivante pour l’installer :

pip install pandas

Lire un fichier CSV

Pour lire un fichier CSV avec pandas, utilisez la fonction read_csv.

import pandas as pd  

# Spécifier le chemin du fichier CSV  
csv_file_path = 'data.csv'  

# Lire le fichier CSV comme un DataFrame  
df = pd.read_csv(csv_file_path)  

# Afficher le contenu du DataFrame  
print(df)

Ce code utilise read_csv pour lire le fichier CSV comme un DataFrame, et les données sont ensuite affichées.

Modifier un fichier CSV

Avec pandas, il est facile de modifier des données en utilisant les fonctionnalités du DataFrame. Voici quelques exemples de modifications de base.

Ajouter une colonne

Pour ajouter une nouvelle colonne, procédez comme suit :

# Ajouter une nouvelle colonne 'new_column' avec des valeurs par défaut de 0  
df['new_column'] = 0

Filtrer des lignes spécifiques

Pour filtrer des lignes en fonction de certaines conditions :

# Filtrer les lignes où les valeurs de 'column_name' dépassent 10  
filtered_df = df[df['column_name'] > 10]

Écrire dans un fichier CSV

Pour écrire un DataFrame modifié dans un fichier CSV, utilisez la fonction to_csv.

# Écrire le DataFrame dans un nouveau fichier CSV  
df.to_csv('output.csv', index=False)

Ce code écrit le contenu du DataFrame dans un nouveau fichier CSV. L’argument index=False empêche l’écriture des numéros de ligne.

Avec pandas, vous pouvez effectuer toutes les opérations nécessaires, de la lecture à la modification et à l’écriture des fichiers CSV. Ensuite, nous verrons comment filtrer les données dans un fichier CSV.

Filtrer les données d’un fichier CSV

En filtrant les données d’un fichier CSV, vous pouvez extraire uniquement les données qui répondent à des critères spécifiques. Avec pandas, il est facile de filtrer les données.

Méthode de filtrage de base

Avec pandas, vous pouvez filtrer un DataFrame en spécifiant des conditions. Voici un exemple de filtrage de base.

import pandas as pd

# Spécifiez le chemin du fichier CSV
csv_file_path = 'data.csv'

# Charger le fichier CSV dans un DataFrame
df = pd.read_csv(csv_file_path)

# Filtrer les lignes où la valeur de 'column_name' satisfait une condition spécifique
filtered_df = df[df['column_name'] > 10]

# Afficher le DataFrame filtré
print(filtered_df)

Dans ce code, seules les lignes où la valeur de column_name est supérieure à 10 sont extraites.

Filtrage avec plusieurs conditions

Il est également possible de combiner plusieurs conditions pour filtrer les données. Voici un exemple.

# Filtrer les lignes où la valeur de 'column1' est supérieure à 10 et 'column2' est inférieure ou égale à 5
filtered_df = df[(df['column1'] > 10) & (df['column2'] <= 5)]

# Afficher le DataFrame filtré
print(filtered_df)

Dans ce code, seules les lignes où column1 est supérieure à 10 et column2 est inférieure ou égale à 5 sont extraites.

Filtrage des données textuelles

Vous pouvez également filtrer des données textuelles. Voici un exemple.

# Filtrer les lignes où 'column_name' correspond à une chaîne spécifique
filtered_df = df[df['column_name'] == 'specific_string']

# Afficher le DataFrame filtré
print(filtered_df)

Dans ce code, seules les lignes où column_name correspond à specific_string sont extraites.

Filtrage avec correspondance partielle

Le filtrage avec une correspondance partielle est également possible. Par exemple, pour extraire les lignes contenant une chaîne spécifique, vous pouvez procéder comme suit :

# Filtrer les lignes où 'column_name' contient une chaîne spécifique
filtered_df = df[df['column_name'].str.contains('substring')]

# Afficher le DataFrame filtré
print(filtered_df)

Dans ce code, seules les lignes où column_name contient substring sont extraites.

En utilisant ces méthodes de filtrage, vous pouvez extraire efficacement les données nécessaires. Ensuite, nous expliquerons comment agréger les données d’un fichier CSV.

Agréger les données d’un fichier CSV

L’agrégation des données est essentielle pour résumer les données en fonction de critères spécifiques et obtenir des informations statistiques. Avec pandas, l’agrégation des données est facile. Voici des méthodes d’agrégation de base.

Obtenir les statistiques de base des données

Voici comment obtenir les informations statistiques de base pour l’ensemble du DataFrame.

import pandas as pd

# Spécifiez le chemin du fichier CSV
csv_file_path = 'data.csv'

# Charger le fichier CSV dans un DataFrame
df = pd.read_csv(csv_file_path)

# Afficher les statistiques de base
print(df.describe())

Dans ce code, la méthode describe est utilisée pour afficher les statistiques de base du DataFrame (moyenne, écart type, valeur minimale, valeur maximale, etc.).

Agréger des colonnes spécifiques

Pour agréger des colonnes spécifiques, procédez comme suit :

# Calculer la somme de 'column_name'
sum_value = df['column_name'].sum()
print(f"Sum of column_name: {sum_value}")

# Calculer la moyenne de 'column_name'
mean_value = df['column_name'].mean()
print(f"Mean of column_name: {mean_value}")

Dans ce code, la somme et la moyenne de la colonne column_name sont calculées.

Agréger par groupe

Il est également possible d’agréger les données par groupe. Voici un exemple :

# Grouper par 'group_column' et calculer la moyenne de 'value_column'
grouped_df = df.groupby('group_column')['value_column'].mean()
print(grouped_df)

Dans ce code, les données sont regroupées par group_column, et la moyenne de value_column est calculée pour chaque groupe.

Agréger avec un tableau croisé dynamique

Pour des agrégations plus complexes, vous pouvez utiliser un tableau croisé dynamique.

# Créer un tableau croisé dynamique
pivot_table = pd.pivot_table(df, values='value_column', index='index_column', columns='columns_column', aggfunc='sum')
print(pivot_table)

Dans ce code, les valeurs de value_column sont agrégées en fonction des combinaisons de index_column et columns_column, et un tableau croisé dynamique est créé.

En utilisant ces méthodes d’agrégation, vous pouvez efficacement résumer les données d’un fichier CSV et obtenir des insights. Ensuite, nous expliquerons comment mettre à jour les données d’un fichier CSV.

Mettre à jour les données d’un fichier CSV

Mettre à jour les données d’un fichier CSV existant est une tâche importante pour la maintenance et la correction des données. Avec pandas, il est facile de modifier les valeurs spécifiques dans un DataFrame. Voici les étapes.

Mettre à jour des valeurs spécifiques

Pour mettre à jour des valeurs spécifiques dans un DataFrame, spécifiez les conditions et modifiez les valeurs correspondantes.

import pandas as pd

# Spécifiez le chemin du fichier CSV
csv_file_path = 'data.csv'

# Charger le fichier CSV dans un DataFrame
df = pd.read_csv(csv_file_path)

# Mettre à jour 'target_column' pour les lignes où 'column_name' est égal à 'old_value'
df.loc[df['column_name'] == 'old_value', 'target_column'] = 'new_value'

# Afficher le DataFrame mis à jour
print(df)

Dans ce code, les lignes où column_name correspond à old_value ont leur valeur de target_column mise à jour avec new_value.

Mettre à jour plusieurs valeurs en une seule opération

Pour mettre à jour plusieurs valeurs en une seule opération, procédez comme suit :

# Mettre à jour plusieurs valeurs basées sur une condition
df.loc[df['column_name'] > 10, 'target_column'] = 'updated_value'

# Afficher le DataFrame mis à jour
print(df)

Dans ce code, les lignes où la valeur de column_name est supérieure à 10 ont leur valeur de target_column mise à jour avec updated_value.

Mettre à jour toutes les occurrences d’une valeur

Pour remplacer toutes les occurrences d’une valeur dans un DataFrame, procédez comme suit :

# Remplacer toutes les occurrences d'une valeur par une nouvelle valeur
df.replace({'old_value': 'new_value'}, inplace=True)

# Afficher le DataFrame mis à jour
print(df)

Dans ce code, toutes les occurrences de old_value dans le DataFrame sont remplacées par new_value.

Enregistrer les données mises à jour dans un fichier CSV

Pour enregistrer un DataFrame mis à jour dans un fichier CSV, utilisez la fonction to_csv.

# Enregistrer le DataFrame mis à jour dans un fichier CSV
df.to_csv('updated_data.csv', index=False)

Dans ce code, le contenu du DataFrame mis à jour est enregistré dans un nouveau fichier CSV. En spécifiant index=False, les numéros de ligne ne seront pas inclus dans le fichier.

En utilisant ces méthodes, vous pouvez mettre à jour efficacement les données d’un fichier CSV existant. Ensuite, nous expliquerons comment ajouter de nouvelles données à un fichier CSV.

Ajouter de nouvelles données à un fichier CSV

Ajouter de nouvelles données à un fichier CSV existant est crucial pour enrichir les données et maintenir un enregistrement continu. Cet article explique comment ajouter facilement de nouvelles données à un fichier CSV existant à l’aide de pandas.

Ajouter une nouvelle ligne au DataFrame

Pour ajouter de nouvelles données au DataFrame, utilisez la méthode append.

import pandas as pd

# Spécifiez le chemin du fichier CSV
csv_file_path = 'data.csv'

# Chargez le fichier CSV dans un DataFrame
df = pd.read_csv(csv_file_path)

# Définissez les nouvelles données sous forme de dictionnaire
new_data = {'column1': 'value1', 'column2': 'value2', 'column3': 'value3'}

# Ajoutez les nouvelles données au DataFrame
df = df.append(new_data, ignore_index=True)

# Affichez le DataFrame mis à jour
print(df)

Dans ce code, les nouvelles données sont définies sous forme de dictionnaire et ajoutées au DataFrame. En spécifiant ignore_index=True, les index sont réinitialisés et une nouvelle ligne est ajoutée.

Ajouter plusieurs nouvelles lignes

Pour ajouter plusieurs lignes de données en une seule fois, procédez comme suit :

# Définissez les nouvelles données sous forme de liste
new_data_list = [
    {'column1': 'value1', 'column2': 'value2', 'column3': 'value3'},
    {'column1': 'value4', 'column2': 'value5', 'column3': 'value6'}
]

# Ajoutez plusieurs nouvelles données au DataFrame
df = df.append(new_data_list, ignore_index=True)

# Affichez le DataFrame mis à jour
print(df)

Dans ce code, les nouvelles données sont définies sous forme de liste et plusieurs lignes sont ajoutées au DataFrame en une seule opération.

Écrire les données ajoutées dans un fichier CSV

Pour enregistrer le DataFrame mis à jour dans le fichier CSV existant, utilisez la fonction to_csv.

# Écrivez le DataFrame mis à jour dans le fichier CSV
df.to_csv('data.csv', index=False)

Dans ce code, le contenu du DataFrame est sauvegardé dans le fichier CSV en écrasant son contenu.

Ajouter de nouvelles données à un fichier CSV existant

Il est également possible d’ajouter de nouvelles données à un fichier CSV existant. Pour cela, utilisez mode='a' (mode d’ajout).

# Créez un nouveau DataFrame
new_data_df = pd.DataFrame([{'column1': 'value1', 'column2': 'value2', 'column3': 'value3'}])

# Ajoutez les nouvelles données au fichier CSV existant
new_data_df.to_csv('data.csv', mode='a', header=False, index=False)

Dans ce code, les nouvelles données sont ajoutées au fichier CSV existant. En spécifiant header=False, les en-têtes ne sont pas réécrites.

En utilisant ces méthodes, vous pouvez ajouter efficacement de nouvelles données à un fichier CSV. Ensuite, nous expliquerons comment convertir un fichier CSV en d’autres formats.

Convertir un fichier CSV en un autre format

En convertissant les données d’un fichier CSV en un autre format, vous pouvez les utiliser dans différentes applications ou outils. Cet article explique comment utiliser pandas pour convertir un fichier CSV en formats Excel, JSON, etc.

Convertir un fichier CSV en fichier Excel

Pour convertir un fichier CSV en fichier Excel à l’aide de pandas, utilisez la méthode to_excel.

import pandas as pd

# Spécifiez le chemin du fichier CSV
csv_file_path = 'data.csv'

# Chargez le fichier CSV dans un DataFrame
df = pd.read_csv(csv_file_path)

# Écrivez le DataFrame dans un fichier Excel
excel_file_path = 'data.xlsx'
df.to_excel(excel_file_path, index=False)

print(f"Le fichier CSV a été converti en fichier Excel ({excel_file_path}).")

Dans ce code, le DataFrame chargé à l’aide de read_csv est converti en fichier Excel à l’aide de to_excel.

Convertir un fichier CSV en fichier JSON

De la même manière, pour convertir un fichier CSV en fichier JSON, utilisez la méthode to_json.

# Écrivez le DataFrame dans un fichier JSON
json_file_path = 'data.json'
df.to_json(json_file_path, orient='records', lines=True)

print(f"Le fichier CSV a été converti en fichier JSON ({json_file_path}).")

Dans ce code, to_json est utilisé pour convertir le DataFrame en fichier JSON. En spécifiant orient='records' et lines=True, chaque ligne est sauvegardée comme un objet JSON distinct.

Convertir un fichier CSV en base de données SQL

Pour importer les données d’un fichier CSV dans une base de données SQL, utilisez SQLAlchemy.

from sqlalchemy import create_engine

# Créez un moteur de connexion à la base de données
engine = create_engine('sqlite:///data.db')

# Écrivez le DataFrame dans la base de données SQL
df.to_sql('table_name', engine, if_exists='replace', index=False)

print("Le fichier CSV a été converti en base de données SQL.")

Dans ce code, une base de données SQLite est utilisée pour convertir le DataFrame en base de données SQL. L’option if_exists='replace' remplace la table existante.

Convertir un fichier CSV en fichier HTML

Pour sauvegarder les données d’un fichier CSV sous forme de table HTML, utilisez la méthode to_html.

# Écrivez le DataFrame dans un fichier HTML
html_file_path = 'data.html'
df.to_html(html_file_path, index=False)

print(f"Le fichier CSV a été converti en fichier HTML ({html_file_path}).")

Dans ce code, to_html est utilisé pour convertir le DataFrame en fichier HTML.

En utilisant ces méthodes, vous pouvez convertir les données d’un fichier CSV dans le format souhaité. Ensuite, nous expliquerons comment traiter efficacement les fichiers CSV volumineux.

Traitement efficace des fichiers CSV volumineux

Lors du traitement de fichiers CSV volumineux, il est important de prendre en compte l’efficacité mémoire et les performances. Même avec pandas, plusieurs techniques peuvent être utilisées pour gérer efficacement les grandes quantités de données.

Charger partiellement un fichier CSV

Charger un fichier CSV volumineux en une seule fois peut entraîner un manque de mémoire. En chargeant uniquement les parties nécessaires, vous pouvez réduire l’utilisation de la mémoire.

import pandas as pd

# Spécifiez le chemin du fichier CSV
csv_file_path = 'large_data.csv'

# Chargez partiellement les données
chunksize = 10000  # Nombre de lignes à charger à la fois
for chunk in pd.read_csv(csv_file_path, chunksize=chunksize):
    # Traitement pour chaque segment
    print(chunk.head())

Dans ce code, la taille des segments à charger est spécifiée avec chunksize, et chaque segment est traité individuellement.

Charger uniquement les colonnes nécessaires

Si toutes les colonnes ne sont pas nécessaires, spécifiez uniquement celles à charger pour réduire l’utilisation de la mémoire.

# Spécifiez les colonnes nécessaires
columns_to_use = ['column1', 'column2', 'column3']
df = pd.read_csv(csv_file_path, usecols=columns_to_use)

# Affichez les données chargées
print(df.head())

Dans ce code, le paramètre usecols est utilisé pour charger uniquement les colonnes nécessaires.

Optimiser les types de données

Les types de données par défaut peuvent consommer beaucoup de mémoire. En spécifiant des types de données appropriés, vous pouvez réduire l’utilisation de la mémoire.

# Spécifiez les types de données
dtype_spec = {'column1': 'int32', 'column2': 'float32', 'column3': 'category'}
df = pd.read_csv(csv_file_path, dtype=dtype_spec)

# Affichez les types de données et les premières lignes
print(df.dtypes)
print(df.head())

Dans ce code, le paramètre dtype est utilisé pour spécifier le type de données de chaque colonne.

Libérer la mémoire après traitement des données

Supprimez explicitement les DataFrames inutiles pour libérer de la mémoire.

import gc

# Effectuez le traitement des données
# ...

# Supprimez les DataFrames inutiles
del df
gc.collect()  # Appelle le ramasse-miettes pour libérer la mémoire

Dans ce code, le DataFrame est supprimé et le ramasse-miettes est appelé pour libérer la mémoire.

Utiliser Dask pour un traitement parallèle

En utilisant Dask à la place de pandas, vous pouvez traiter de grandes quantités de données en parallèle.

import dask.dataframe as dd

# Chargez le fichier CSV dans un DataFrame Dask
df = dd.read_csv(csv_file_path)

# Opérations sur le DataFrame Dask
result = df.groupby('column1').sum().compute()

# Affichez le résultat
print(result)

Dans ce code, Dask est utilisé pour lire le fichier CSV et effectuer des opérations en parallèle sur les données.

En utilisant ces techniques, vous pouvez traiter efficacement des fichiers CSV volumineux. Ensuite, nous expliquerons la gestion des erreurs et la validation des données.

Gestion des erreurs et validation des données

Lors de la manipulation des fichiers CSV, la gestion des erreurs et la validation des données sont essentielles pour maintenir la qualité des données. Nous allons présenter comment utiliser pandas pour valider les données et gérer les erreurs.

Validation des données

La validation des données permet de s’assurer de la cohérence et de l’exactitude des données. Voici des méthodes courantes pour valider les données.

Détection des valeurs manquantes

Voici comment détecter les valeurs manquantes dans un DataFrame.

import pandas as pd

# Spécifier le chemin du fichier CSV
csv_file_path = 'data.csv'

# Charger le fichier CSV dans un DataFrame
df = pd.read_csv(csv_file_path)

# Détection des valeurs manquantes
missing_values = df.isnull().sum()
print("Nombre de valeurs manquantes:\n", missing_values)

Ce code utilise la méthode isnull pour détecter les valeurs manquantes et affiche leur nombre.

Détection des doublons

Voici comment détecter les lignes dupliquées dans un DataFrame.

# Détection des doublons
duplicate_rows = df.duplicated().sum()
print("Nombre de lignes dupliquées:", duplicate_rows)

Ce code utilise la méthode duplicated pour détecter les lignes dupliquées et affiche leur nombre.

Détection des données ne respectant pas des critères spécifiques

On vérifie si les données respectent certains critères spécifiques.

# Détecter les lignes où les valeurs de 'column_name' sont négatives
invalid_data = df[df['column_name'] < 0]
print("Données invalides:\n", invalid_data)

Ce code détecte les lignes où les valeurs de column_name sont négatives.

Gestion des erreurs

Nous présentons ici comment gérer les erreurs qui peuvent survenir lors du traitement des fichiers CSV.

Gestion des erreurs lors du chargement

Voici comment gérer les erreurs qui peuvent survenir lors du chargement d’un fichier CSV.

try:
    df = pd.read_csv(csv_file_path)
except FileNotFoundError:
    print(f"Fichier introuvable: {csv_file_path}")
except pd.errors.EmptyDataError:
    print("Le fichier est vide")
except pd.errors.ParserError:
    print("Erreur lors de l'analyse du fichier")

Ce code utilise un bloc try-except pour gérer les erreurs possibles lors du chargement d’un fichier CSV.

Gestion des erreurs lors de la transformation des données

Voici comment gérer les erreurs survenant lors de la conversion des types de données.

# Gestion des erreurs lors de la conversion en numérique pour 'column_name'
df['column_name'] = pd.to_numeric(df['column_name'], errors='coerce')
print("Données après conversion:\n", df)

Ce code utilise la méthode to_numeric pour convertir les données en numérique et remplace les valeurs non convertibles par NaN.

Journalisation des erreurs

Voici comment enregistrer les détails des erreurs dans un fichier journal.

import logging

# Configuration du journal
logging.basicConfig(filename='errors.log', level=logging.ERROR)

# Exemple d'enregistrement d'erreurs dans le journal
try:
    df = pd.read_csv(csv_file_path)
except Exception as e:
    logging.error("Une erreur s'est produite", exc_info=True)

Ce code utilise le module logging pour enregistrer les erreurs dans un fichier journal.

En utilisant ces techniques, vous pouvez gérer efficacement les erreurs lors du traitement des fichiers CSV tout en maintenant la qualité des données. Ensuite, nous expliquerons comment utiliser les fichiers CSV pour l’analyse des données.

Exemple d’application : Analyse des données avec des fichiers CSV

En exploitant les fichiers CSV pour analyser les données, vous pouvez obtenir des informations utiles à partir de vos données. Nous présentons ici des techniques de base pour l’analyse des données en utilisant pandas.

Chargement et prétraitement des données

Nous commencerons par charger un fichier CSV et effectuer le prétraitement des données.

import pandas as pd

# Spécifier le chemin du fichier CSV
csv_file_path = 'data.csv'

# Charger le fichier CSV dans un DataFrame
df = pd.read_csv(csv_file_path)

# Afficher les informations de base sur les données
print(df.info())

# Vérification des valeurs manquantes
print("Nombre de valeurs manquantes:\n", df.isnull().sum())

# Traitement des valeurs manquantes (exemple : remplacer les valeurs manquantes par 0)
df.fillna(0, inplace=True)

Ce code affiche les informations de base sur les données et effectue un prétraitement en remplaçant les valeurs manquantes par 0.

Calcul des statistiques de base

Nous calculons les statistiques de base des données.

# Afficher les statistiques de base
print(df.describe())

Ce code utilise la méthode describe pour afficher les statistiques de base du DataFrame.

Visualisation des données

La visualisation des données permet de comprendre les tendances et les modèles dans les données. Nous allons créer des graphiques de base avec matplotlib.

import matplotlib.pyplot as plt

# Créer un histogramme pour 'column1'
df['column1'].hist()
plt.title('Histogramme de la colonne 1')
plt.xlabel('Valeurs')
plt.ylabel('Fréquence')
plt.show()

# Créer un nuage de points pour 'column1' et 'column2'
df.plot.scatter(x='column1', y='column2')
plt.title('Nuage de points de la colonne 1 et colonne 2')
plt.xlabel('Colonne 1')
plt.ylabel('Colonne 2')
plt.show()

Ce code génère un histogramme et un nuage de points pour visualiser la distribution et les relations entre les données.

Groupement et agrégation

Nous allons regrouper les données et calculer des agrégats pour obtenir des résultats par catégorie.

# Grouper par 'category_column' et calculer la somme de 'value_column'
grouped_df = df.groupby('category_column')['value_column'].sum()
print(grouped_df)

# Visualiser les données regroupées sous forme de graphique en barres
grouped_df.plot(kind='bar')
plt.title('Valeur totale par catégorie')
plt.xlabel('Catégorie')
plt.ylabel('Valeur totale')
plt.show()

Ce code regroupe les données par catégorie, calcule la somme des valeurs pour chaque catégorie et les visualise sous forme de graphique en barres.

Analyse des séries temporelles

Voici comment analyser les données temporelles.

# Convertir la colonne des dates en type Datetime
df['date_column'] = pd.to_datetime(df['date_column'])

# Définir les dates comme index
df.set_index('date_column', inplace=True)

# Re-échantillonner les données journalières en données mensuelles et calculer la moyenne
monthly_avg = df.resample('M').mean()
print(monthly_avg)

# Visualiser la moyenne mensuelle avec un graphique en ligne
monthly_avg.plot()
plt.title('Moyenne mensuelle des valeurs')
plt.xlabel('Mois')
plt.ylabel('Valeur moyenne')
plt.show()

Ce code re-échantillonne les données journalières en données mensuelles, calcule la moyenne et les visualise avec un graphique en ligne.

Construction d’un modèle d’apprentissage automatique

Enfin, nous présentons comment construire un modèle d’apprentissage automatique simple à l’aide des données CSV.

from sklearn.model_selection import train_test_split
from sklearn.linear_model import LinearRegression
from sklearn.metrics import mean_squared_error

# Définir les caractéristiques et la variable cible
X = df[['feature1', 'feature2']]
y = df['target']

# Diviser les données en ensembles d'entraînement et de test
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)

# Créer un modèle de régression linéaire
model = LinearRegression()
model.fit(X_train, y_train)

# Prédire avec l'ensemble de test
y_pred = model.predict(X_test)

# Évaluer le modèle
mse = mean_squared_error(y_test, y_pred)
print(f'Erreur quadratique moyenne: {mse}')

Ce code construit un modèle de régression linéaire, l’entraîne sur les données d’entraînement, effectue des prédictions sur les données de test et évalue la performance du modèle.

En utilisant ces techniques, vous pouvez analyser efficacement les données des fichiers CSV et en tirer des informations précieuses. Ensuite, nous fournirons des exercices pratiques pour consolider les compétences acquises.

Sommaire