Analyse exploratoire des données
Vue d'ensemble
Réaliser une analyse exploratoire complète des données (EDA) sur des fichiers de données scientifiques dans plusieurs domaines. Cette compétence offre la détection automatique du type de fichier, l'analyse spécifique au format, l'évaluation de la qualité des données et génère des rapports markdown détaillés adaptés à la documentation et à la planification d'analyses ultérieures.
Capacités clés :
- Détection et analyse automatiques de 200+ formats de fichiers scientifiques
- Extraction complète de métadonnées spécifiques au format
- Évaluation de la qualité et de l'intégrité des données
- Résumés statistiques et distributions
- Recommandations de visualisation
- Suggestions d'analyses ultérieures
- Génération de rapports markdown
Quand utiliser cette compétence
Utilisez cette compétence quand :
- L'utilisateur fournit le chemin d'un fichier de données scientifiques pour l'analyse
- L'utilisateur demande « explorer », « analyser » ou « résumer » un fichier de données
- L'utilisateur veut comprendre la structure et le contenu de données scientifiques
- L'utilisateur a besoin d'un rapport exhaustif d'un ensemble de données avant l'analyse
- L'utilisateur veut évaluer la qualité ou l'exhaustivité des données
- L'utilisateur demande quel type d'analyse convient à un fichier
Catégories de fichiers pris en charge
La compétence dispose d'une couverture complète des formats de fichiers scientifiques organisée en six catégories principales :
1. Formats chimie et moléculaires (60+ extensions)
Fichiers de structure, résultats de chimie computationnelle, trajectoires de dynamique moléculaire et bases de données chimiques.
Les types de fichiers comprennent : .pdb, .cif, .mol, .mol2, .sdf, .xyz, .smi, .gro, .log, .fchk, .cube, .dcd, .xtc, .trr, .prmtop, .psf, et autres.
Fichier de référence : references/chemistry_molecular_formats.md
2. Formats bioinformatique et génomique (50+ extensions)
Données de séquences, alignements, annotations, variantes et données d'expression.
Les types de fichiers comprennent : .fasta, .fastq, .sam, .bam, .vcf, .bed, .gff, .gtf, .bigwig, .h5ad, .loom, .counts, .mtx, et autres.
Fichier de référence : references/bioinformatics_genomics_formats.md
3. Formats microscopie et imagerie (45+ extensions)
Images de microscopie, imagerie médicale, imagerie de lames entières et microscopie électronique.
Les types de fichiers comprennent : .tif, .nd2, .lif, .czi, .ims, .dcm, .nii, .mrc, .dm3, .vsi, .svs, .ome.tiff, et autres.
Fichier de référence : references/microscopy_imaging_formats.md
4. Formats spectroscopie et chimie analytique (35+ extensions)
RMN, spectrométrie de masse, IR/Raman, UV-Vis, rayons X, chromatographie et autres techniques analytiques.
Les types de fichiers comprennent : .fid, .mzML, .mzXML, .raw, .mgf, .spc, .jdx, .xy, .cif (cristallographie), .wdf, et autres.
Fichier de référence : references/spectroscopy_analytical_formats.md
5. Formats protéomique et métabolomique (30+ extensions)
Protéomique spectrométrie de masse, métabolomique, lipidomique et données multi-omiques.
Les types de fichiers comprennent : .mzML, .pepXML, .protXML, .mzid, .mzTab, .sky, .mgf, .msp, .h5ad, et autres.
Fichier de référence : references/proteomics_metabolomics_formats.md
6. Formats généraux de données scientifiques (30+ extensions)
Tableaux, tables, données hiérarchiques, archives compressées et formats scientifiques courants.
Les types de fichiers comprennent : .npy, .npz, .csv, .xlsx, .json, .hdf5, .zarr, .parquet, .mat, .fits, .nc, .xml, et autres.
Fichier de référence : references/general_scientific_formats.md
Flux de travail
Étape 1 : Détection du type de fichier
Quand un utilisateur fournit un chemin de fichier, identifiez d'abord le type de fichier :
- Extraire l'extension de fichier
- Chercher l'extension dans le fichier de référence approprié
- Identifier la catégorie de fichier et la description du format
- Charger les informations spécifiques au format
Exemple :
Utilisateur : "Analyser data.fastq"
→ Extension : .fastq
→ Catégorie : bioinformatics_genomics
→ Format : Format FASTQ (données de séquence avec scores de qualité)
→ Référence : references/bioinformatics_genomics_formats.md
Étape 2 : Charger les informations spécifiques au format
En fonction du type de fichier, lisez le fichier de référence correspondant pour comprendre :
- Données typiques : Quel type de données contient ce format
- Cas d'usage : Applications courantes pour ce format
- Bibliothèques Python : Comment lire le fichier en Python
- Approche EDA : Quelles analyses conviennent pour ce type de données
Recherchez le fichier de référence pour l'extension spécifique (p. ex., cherchez « ### .fastq » dans bioinformatics_genomics_formats.md).
Étape 3 : Effectuer l'analyse des données
Utilisez le script scripts/eda_analyzer.py OU implémentez une analyse personnalisée :
Option A : Utiliser le script analyseur
# Le script effectue automatiquement :
# 1. Détecte le type de fichier
# 2. Charge les informations de référence
# 3. Effectue une analyse spécifique au format
# 4. Génère un rapport markdown
python scripts/eda_analyzer.py <filepath> [output.md]
Option B : Analyse personnalisée dans la conversation En fonction des informations de format du fichier de référence, effectuez l'analyse appropriée :
Pour les données tabulaires (CSV, TSV, Excel) :
- Charger avec pandas
- Vérifier les dimensions, types de données
- Analyser les valeurs manquantes
- Calculer les statistiques récapitulatives
- Identifier les valeurs aberrantes
- Vérifier les doublons
Pour les données de séquence (FASTA, FASTQ) :
- Compter les séquences
- Analyser les distributions de longueur
- Calculer le contenu en GC
- Évaluer les scores de qualité (FASTQ)
Pour les images (TIFF, ND2, CZI) :
- Vérifier les dimensions (X, Y, Z, C, T)
- Analyser la profondeur de bits et la plage de valeurs
- Extraire les métadonnées (canaux, horodatages, calibrage spatial)
- Calculer les statistiques d'intensité
Pour les tableaux (NPY, HDF5) :
- Vérifier la forme et les dimensions
- Analyser le type de données
- Calculer les résumés statistiques
- Vérifier les valeurs manquantes/invalides
Étape 4 : Générer un rapport complet
Créez un rapport markdown avec les sections suivantes :
Sections obligatoires :
-
Titre et métadonnées
- Nom et horodatage du fichier
- Taille et emplacement du fichier
-
Informations de base
- Propriétés du fichier
- Identification du format
-
Détails du type de fichier
- Description du format à partir de la référence
- Contenu des données typiques
- Cas d'usage courants
- Bibliothèques Python pour la lecture
-
Analyse des données
- Structure et dimensions
- Résumés statistiques
- Évaluation de la qualité
- Caractéristiques des données
-
Résultats clés
- Motifs remarquables
- Problèmes potentiels
- Métriques de qualité
-
Recommandations
- Étapes de prétraitement
- Analyses appropriées
- Outils et méthodes
- Approches de visualisation
Emplacement du modèle
Utilisez assets/report_template.md comme guide pour la structure du rapport.
Étape 5 : Enregistrer le rapport
Enregistrez le rapport markdown avec un nom de fichier descriptif :
- Motif :
{original_filename}_eda_report.md - Exemple :
experiment_data.fastq→experiment_data_eda_report.md
Références détaillées des formats
Chaque fichier de référence contient des informations complètes pour des dizaines de types de fichiers. Pour trouver des informations sur un format spécifique :
- Identifier la catégorie à partir de l'extension
- Lire le fichier de référence approprié
- Chercher le titre de section correspondant à l'extension (p. ex., « ### .pdb »)
- Extraire les informations de format
Structure du fichier de référence
Chaque entrée de format comprend :
- Description : Ce qu'est le format
- Données typiques : Ce qu'il contient
- Cas d'usage : Applications courantes
- Bibliothèques Python : Comment le lire (avec exemples de code)
- Approche EDA : Analyses spécifiques à effectuer
Exemple de recherche :
### .pdb - Protein Data Bank
**Description :** Format standard pour les structures 3D des macromolécules biologiques
**Données typiques :** Coordonnées atomiques, informations sur les résidus, structure secondaire
**Cas d'usage :** Analyse de structure protéique, visualisation moléculaire, amarrage
**Bibliothèques Python :**
- `Biopython` : `Bio.PDB`
- `MDAnalysis` : `MDAnalysis.Universe('file.pdb')`
**Approche EDA :**
- Validation de structure (longueurs, angles de liaisons)
- Distribution des facteurs B
- Détection de résidus manquants
- Graphiques de Ramachandran
Bonnes pratiques
Lecture des fichiers de référence
Les fichiers de référence sont volumineux (10 000+ mots chacun). Pour les utiliser efficacement :
-
Rechercher par extension : Utiliser grep pour trouver le format spécifique
import re with open('references/chemistry_molecular_formats.md', 'r') as f: content = f.read() pattern = r'### \.pdb[^#]*?(?=###|\Z)' match = re.search(pattern, content, re.IGNORECASE | re.DOTALL) -
Extraire les sections pertinentes : Ne pas charger les fichiers de référence entiers inutilement dans le contexte
-
Mettre en cache les informations de format : Si vous analysez plusieurs fichiers du même type, réutilisez les informations de format
Analyse des données
- Échantillonner les fichiers volumineux : Pour les fichiers avec des millions d'enregistrements, analyser un échantillon représentatif
- Gérer les erreurs correctement : De nombreux formats scientifiques nécessitent des bibliothèques spécifiques ; fournir des instructions d'installation claires
- Valider les métadonnées : Vérifier la cohérence des métadonnées (p. ex., dimensions déclarées par rapport aux données réelles)
- Considérer la provenance des données : Noter l'instrument, les versions logicielles, les étapes de traitement
Génération de rapports
- Être exhaustif : Inclure toutes les informations pertinentes pour l'analyse ultérieure
- Être spécifique : Fournir des recommandations concrètes basées sur le type de fichier
- Être actionnable : Suggérer des étapes suivantes spécifiques et des outils
- Inclure des exemples de code : Montrer comment charger et travailler avec les données
Exemples
Exemple 1 : Analyser un fichier FASTQ
# L'utilisateur fournit : "Analyser reads.fastq"
# 1. Détecter le type de fichier
extension = '.fastq'
category = 'bioinformatics_genomics'
# 2. Lire les informations de référence
# Chercher dans references/bioinformatics_genomics_formats.md pour "### .fastq"
# 3. Effectuer l'analyse
from Bio import SeqIO
sequences = list(SeqIO.parse('reads.fastq', 'fastq'))
# Calculer : nombre de lectures, distribution de longueur, scores de qualité, contenu en GC
# 4. Générer le rapport
# Inclure : description du format, résultats de l'analyse, recommandations d'AQ
# 5. Enregistrer sous : reads_eda_report.md
Exemple 2 : Analyser un ensemble de données CSV
# L'utilisateur fournit : "Explorer experiment_results.csv"
# 1. Détecter : .csv → general_scientific
# 2. Charger la référence pour le format CSV
# 3. Analyser
import pandas as pd
df = pd.read_csv('experiment_results.csv')
# Dimensions, types, valeurs manquantes, statistiques, corrélations
# 4. Générer le rapport avec :
# - Structure des données
# - Motifs de valeurs manquantes
# - Résumés statistiques
# - Matrice de corrélation
# - Résultats de la détection des valeurs aberrantes
# 5. Enregistrer le rapport
Exemple 3 : Analyser des données de microscopie
# L'utilisateur fournit : "Analyser cells.nd2"
# 1. Détecter : .nd2 → microscopy_imaging (format Nikon)
# 2. Lire la référence pour le format ND2
# Apprendre : multi-dimensionnel (XYZCT), nécessite nd2reader
# 3. Analyser
from nd2reader import ND2Reader
with ND2Reader('cells.nd2') as images:
# Extraire : dimensions, canaux, points temporels, métadonnées
# Calculer : statistiques d'intensité, informations d'images
# 4. Générer le rapport avec :
# - Dimensions des images (XY, piles Z, temps, canaux)
# - Longueurs d'onde des canaux
# - Taille de pixel et calibrage
# - Recommandations pour l'analyse d'images
# 5. Enregistrer le rapport
Dépannage
Bibliothèques manquantes
De nombreux formats scientifiques nécessitent des bibliothèques spécialisées :
Problème : Erreur d'importation en essayant de lire un fichier
Solution : Fournir des instructions d'installation claires
try:
from Bio import SeqIO
except ImportError:
print("Installer Biopython : uv pip install biopython")
Exigences courantes par catégorie :
- Bioinformatique :
biopython,pysam,pyBigWig - Chimie :
rdkit,mdanalysis,cclib - Microscopie :
tifffile,nd2reader,aicsimageio,pydicom - Spectroscopie :
nmrglue,pymzml,pyteomics - Général :
pandas,numpy,h5py,scipy
Types de fichiers inconnus
Si une extension de fichier ne figure pas dans les références :
- Demander à l'utilisateur le format du fichier
- Vérifier s'il s'agit d'une variante spécifique au fournisseur
- Essayer une analyse générique basée sur la structure du fichier (texte vs binaire)
- Fournir des recommandations générales
Fichiers volumineux
Pour les très gros fichiers :
- Utiliser des stratégies d'échantillonnage (premiers N enregistrements)
- Utiliser l'accès avec adressage mémoire (pour HDF5, NPY)
- Traiter par morceaux (pour CSV, FASTQ)
- Fournir des estimations basées sur les échantillons
Utilisation du script
Le script scripts/eda_analyzer.py peut être utilisé directement :
# Utilisation basique
python scripts/eda_analyzer.py data.csv
# Spécifier le fichier de sortie
python scripts/eda_analyzer.py data.csv output_report.md
# Le script effectuera :
# 1. Détection automatique du type de fichier
# 2. Chargement des références de format
# 3. Effectuation de l'analyse appropriée
# 4. Génération du rapport markdown
Le script supporte l'analyse automatique pour de nombreux formats courants, mais l'analyse personnalisée dans la conversation offre plus de flexibilité et des informations spécifiques au domaine.
Utilisation avancée
Analyse multi-fichiers
Lors de l'analyse de plusieurs fichiers connexes :
- Effectuer une EDA individuelle sur chaque fichier
- Créer un rapport de comparaison récapitulatif
- Identifier les relations et dépendances
- Suggérer les stratégies d'intégration
Contrôle de la qualité
Pour l'évaluation de la qualité des données :
- Vérifier la conformité du format
- Valider la cohérence des métadonnées
- Évaluer l'exhaustivité
- Identifier les valeurs aberrantes et les anomalies
- Comparer aux plages/distributions attendues
Recommandations de prétraitement
En fonction des caractéristiques des données, recommander :
- Stratégies de normalisation
- Imputation de valeurs manquantes
- Traitement des valeurs aberrantes
- Correction de lot
- Conversions de format
Ressources
scripts/
eda_analyzer.py: Script d'analyse complet qui peut être exécuté directement ou importé
references/
chemistry_molecular_formats.md: 60+ formats de fichiers chimie/moléculairesbioinformatics_genomics_formats.md: 50+ formats bioinformatiquemicroscopy_imaging_formats.md: 45+ formats imageriespectroscopy_analytical_formats.md: 35+ formats spectroscopieproteomics_metabolomics_formats.md: 30+ formats omiquesgeneral_scientific_formats.md: 30+ formats généraux
assets/
report_template.md: Modèle markdown exhaustif pour les rapports EDA