Stocker efficacement les données collectées
Enregistrer en CSV/JSON/Parquet, ajouter des données en toute sécurité, dédupliquer et collecter progressivement.
Stocker efficacement les données collectées est une leçon Learn AI with Python gratuite sur CoddyKit. Ceci est la leçon 3 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage Learn AI with Python, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours Learn AI with Python comprend 4 leçons au total.
Des réponses brutes aux données stockées
Après avoir collecté des données, vous devez les stocker afin de pouvoir les recharger, les partager et les analyser. Le format approprié et quelques bonnes pratiques font une grande différence en matière de vitesse et d'espace disque utilisé.
Cette leçon aborde les formats CSV et Parquet, l'ajout de lots et la déduplication.
Du JSON à une DataFrame
Les réponses des API sont généralement des listes de dictionnaires. pd.DataFrame les transforme directement en tableau prêt à être stocké.
import pandas as pd
records = [
{"id": 1, "name": "A", "score": 9.5},
{"id": 2, "name": "B", "score": 8.0},
]
df = pd.DataFrame(records)
print(df)Enregistrer au format CSV avec df.to_csv
Le CSV est universel et lisible par les humains. Enregistrez-le avec to_csv ; transmettez index=False afin que l'indice des lignes ne soit pas écrit comme une colonne parasite.
df.to_csv("data.csv", index=False)
# Reload
df2 = pd.read_csv("data.csv")Limites du CSV
Le CSV est pratique, mais présente des inconvénients pour l'IA :
- Aucun type — tout est stocké sous forme de texte, les types de données sont donc redéduits lors du chargement
- Fichiers volumineux, sans compression par défaut
- Lecture lente pour les grands jeux de données
Pour les données volumineuses ou chargées régulièrement, Parquet est préférable.
Enregistrer au format Parquet avec df.to_parquet
Parquet est un format binaire en colonnes. Il conserve les types de données, se compresse bien et se charge beaucoup plus rapidement que le CSV.
Un moteur tel que pyarrow doit être installé.
df.to_parquet("data.parquet", index=False)
df2 = pd.read_parquet("data.parquet")
print(df2.dtypes) # types preserved, no re-guessingCSV ou Parquet — lequel utiliser et quand
Règles générales :
- CSV : petites données, partage avec des outils non-Python, inspection rapide
- Parquet : grandes données, chargements répétés, préservation des types, chaînes de traitement analytiques
Pour les tâches de collecte qui alimentent des modèles, privilégiez Parquet.
Ajouter de nouveaux lots avec pd.concat
La collecte se fait souvent par lots. Combinez une DataFrame existante avec une nouvelle à l'aide de pd.concat.
ignore_index=True renumérote l'indice afin qu'il reste propre.
new_batch = pd.DataFrame(new_records)
df = pd.concat([df, new_batch], ignore_index=True)
print(len(df))Ajouter directement des données à un fichier CSV
Pour ajouter des données à un CSV existant sans le charger, ouvrez-le en mode ajout et ignorez l'en-tête lors des écritures suivantes.
import os
header = not os.path.exists("data.csv")
new_batch.to_csv("data.csv", mode="a", header=header, index=False)Pourquoi dédupliquer
Relancer une collecte, parcourir des pages qui se chevauchent ou effectuer des tentatives répétées peut créer des lignes en double. Les doublons gonflent les décomptes et peuvent se retrouver dans les séparations entre entraînement et test, ce qui nuit à l’évaluation du modèle.
Dédupliquez toujours après avoir combiné les lots.
drop_duplicates(subset=[id])
Utilisez une clé unique stable, souvent id, avec drop_duplicates(subset=...). Cela supprime les répétitions même si d’autres champs ont légèrement changé.
keep="last" conserve la version la plus récente de chaque identifiant.
df = df.drop_duplicates(subset=["id"], keep="last").reset_index(drop=True)
print(len(df), "unique rows")Un utilitaire d’enregistrement et de fusion
Combinez les différentes parties : chargez le fichier Parquet existant s’il est présent, concaténez le nouveau lot, dédupliquez par identifiant, puis enregistrez le résultat. Vous pouvez exécuter cette opération plusieurs fois sans danger.
import os
import pandas as pd
def save_merge(new_df, path="data.parquet", key="id"):
if os.path.exists(path):
old = pd.read_parquet(path)
new_df = pd.concat([old, new_df], ignore_index=True)
new_df = new_df.drop_duplicates(subset=[key], keep="last")
new_df.to_parquet(path, index=False)
return new_dfVérification rapide : choix du format
Vous chargez régulièrement un jeu de données volumineux pour l’entraînement d’un modèle et vous devez conserver les types de données tout en bénéficiant de lectures rapides.
Récapitulatif : stocker les données efficacement
Vous savez désormais bien conserver les données collectées :
pd.DataFramepour transformer des enregistrements JSON en tableauto_csv(index=False)pour du texte portable, etto_parquetpour un stockage typé rapidepd.concat(ignore_index=True)ou le mode append de CSV pour les lotsdrop_duplicates(subset=["id"])pour conserver des lignes uniques
Ensuite : travailler avec de véritables API publiques.
Questions Fréquemment Posées
La leçon « Stocker efficacement les données collectées » est-elle gratuite ?
Oui — le texte complet de « Stocker efficacement les données collectées » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours Learn AI with Python, passe à CoddyKit PRO. Le cours Learn AI with Python comprend 4 leçons au total.
Qu'est-ce que j'apprendrai dans « Stocker efficacement les données collectées » ?
Enregistrer en CSV/JSON/Parquet, ajouter des données en toute sécurité, dédupliquer et collecter progressivement. Tu pratiques Learn AI with Python avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.
Dois-je avoir de l'expérience pour commencer Learn AI with Python ?
Aucune expérience préalable n'est requise. Learn AI with Python sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 3 sur 4.
Combien de temps prend la leçon « Stocker efficacement les données collectées » ?
La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.
Peux-tu écrire et exécuter du code dans cette leçon Learn AI with Python ?
Oui. Chaque leçon Learn AI with Python inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.
Toutes les leçons de ce cours
- Principes fondamentaux des API REST pour la collecte de données
- Paginer et collecter de grands jeux de données
- Stocker efficacement les données collectées
- Utiliser les API de données publiques