gget

Par mkurman · zorai

Requêtes rapides en CLI/Python vers plus de 20 bases de données bioinformatiques. À utiliser pour des recherches ponctuelles : informations sur les gènes, recherches BLAST, structures AlphaFold, analyses d'enrichissement. Idéal pour l'exploration interactive et les requêtes simples. Pour le traitement par lots ou les usages avancés de BLAST, privilégiez biopython ; pour les workflows Python multi-bases de données, utilisez bioservices.

npx skills add https://github.com/mkurman/zorai --skill gget

gget

Aperçu

gget est un outil de bioinformatique en ligne de commande et un package Python offrant un accès unifié à 20+ bases de données génomiques et méthodes d'analyse. Interrogez des informations géniques, des analyses de séquences, des structures protéiques, des données d'expression et des associations maladie via une interface cohérente. Tous les modules gget fonctionnent à la fois comme outils en ligne de commande et comme fonctions Python.

Important : Les bases de données interrogées par gget sont continuellement mises à jour, ce qui modifie parfois leur structure. Les modules gget sont testés automatiquement tous les deux mois et mis à jour pour correspondre aux nouvelles structures de bases de données si nécessaire.

Installation

Installez gget dans un environnement virtuel propre pour éviter les conflits :

# En utilisant uv (recommandé)
uv pip install gget

# Ou en utilisant pip
uv pip install --upgrade gget

# En Python/Jupyter
import gget

Démarrage rapide

Schéma d'utilisation basique pour tous les modules :

# Ligne de commande
gget <module> [arguments] [options]

# Python
gget.module(arguments, options)

La plupart des modules retournent :

  • Ligne de commande : JSON (défaut) ou CSV avec le flag -csv
  • Python : DataFrame ou dictionnaire

Flags courants entre les modules :

  • -o/--out : Enregistrer les résultats dans un fichier
  • -q/--quiet : Supprimer les informations de progression
  • -csv : Retourner au format CSV (ligne de commande uniquement)

Catégories de modules

1. Référence et information génique

gget ref - Téléchargements de génome de référence

Récupérez les liens de téléchargement et les métadonnées pour les génomes de référence Ensembl.

Paramètres :

  • species : Format Genus_species (ex. 'homo_sapiens', 'mus_musculus'). Raccourcis : 'human', 'mouse'
  • -w/--which : Spécifier les types de retour (gtf, cdna, dna, cds, cdrna, pep). Défaut : tous
  • -r/--release : Numéro de release Ensembl (défaut : latest)
  • -l/--list_species : Lister les espèces vertébrées disponibles
  • -liv/--list_iv_species : Lister les espèces invertébrées disponibles
  • -ftp : Retourner uniquement les liens FTP
  • -d/--download : Télécharger les fichiers (nécessite curl)

Exemples :

# Lister les espèces disponibles
gget ref --list_species

# Obtenir tous les fichiers de référence pour l'humain
gget ref homo_sapiens

# Télécharger uniquement l'annotation GTF pour la souris
gget ref -w gtf -d mouse
# Python
gget.ref("homo_sapiens")
gget.ref("mus_musculus", which="gtf", download=True)

gget search - Recherche de gènes

Localisez les gènes par nom ou description entre espèces.

Paramètres :

  • searchwords : Un ou plusieurs termes de recherche (insensible à la casse)
  • -s/--species : Espèce cible (ex. 'homo_sapiens', 'mouse')
  • -r/--release : Numéro de release Ensembl
  • -t/--id_type : Retourner 'gene' (défaut) ou 'transcript'
  • -ao/--andor : 'or' (défaut) trouve N'IMPORTE QUEL terme ; 'and' requiert TOUS
  • -l/--limit : Nombre maximum de résultats à retourner

Retours : ensembl_id, gene_name, ensembl_description, ext_ref_description, biotype, URL

Exemples :

# Rechercher les gènes liés à GABA chez l'humain
gget search -s human gaba gamma-aminobutyric

# Trouver un gène spécifique, nécessiter tous les termes
gget search -s mouse -ao and pax7 transcription
# Python
gget.search(["gaba", "gamma-aminobutyric"], species="homo_sapiens")

gget info - Information sur gène/transcrit

Récupérez les métadonnées complètes de gène et transcrit depuis Ensembl, UniProt et NCBI.

Paramètres :

  • ens_ids : Un ou plusieurs IDs Ensembl (supporte aussi les IDs WormBase, Flybase). Limite : ~1000 IDs
  • -n/--ncbi : Désactiver la récupération de données NCBI
  • -u/--uniprot : Désactiver la récupération de données UniProt
  • -pdb : Inclure les identifiants PDB (augmente le temps d'exécution)

Retours : ID UniProt, ID gène NCBI, nom principal du gène, synonymes, noms de protéines, descriptions, biotype, transcrit canonique

Exemples :

# Obtenir les informations pour plusieurs gènes
gget info ENSG00000034713 ENSG00000104853 ENSG00000170296

# Inclure les IDs PDB
gget info ENSG00000034713 -pdb
# Python
gget.info(["ENSG00000034713", "ENSG00000104853"], pdb=True)

gget seq - Récupération de séquence

Récupérez les séquences nucléotidiques ou acides aminés pour les gènes et transcrits.

Paramètres :

  • ens_ids : Un ou plusieurs identifiants Ensembl
  • -t/--translate : Récupérer les séquences d'acides aminés au lieu de nucléotides
  • -iso/--isoforms : Retourner toutes les variantes de transcrit (IDs de gènes uniquement)

Retours : Séquences au format FASTA

Exemples :

# Obtenir les séquences nucléotidiques
gget seq ENSG00000034713 ENSG00000104853

# Obtenir toutes les isoformes protéiques
gget seq -t -iso ENSG00000034713
# Python
gget.seq(["ENSG00000034713"], translate=True, isoforms=True)

2. Analyse de séquence et alignement

gget blast - Recherches BLAST

Lancez des recherches BLAST sur des séquences nucléotidiques ou acides aminés contre les bases de données standard.

Paramètres :

  • sequence : Chaîne de séquence ou chemin vers fichier FASTA/.txt
  • -p/--program : blastn, blastp, blastx, tblastn, tblastx (détection automatique)
  • -db/--database :
    • Nucléotides : nt, refseq_rna, pdbnt
    • Protéines : nr, swissprot, pdbaa, refseq_protein
  • -l/--limit : Maximum de résultats (défaut : 50)
  • -e/--expect : Seuil de E-value (défaut : 10.0)
  • -lcf/--low_comp_filt : Activer le filtrage de faible complexité
  • -mbo/--megablast_off : Désactiver MegaBLAST (blastn uniquement)

Exemples :

# BLAST de séquence protéique
gget blast MKWMFKEDHSLEHRCVESAKIRAKYPDRVPVIVEKVSGSQIVDIDKRKYLVPSDITVAQFMWIIRKRIQLPSEKAIFLFVDKTVPQSR

# BLAST depuis fichier avec base de données spécifique
gget blast sequence.fasta -db swissprot -l 10
# Python
gget.blast("MKWMFK...", database="swissprot", limit=10)

gget blat - Recherches BLAT

Localisez les positions génomiques des séquences en utilisant BLAT d'UCSC.

Paramètres :

  • sequence : Chaîne de séquence ou chemin vers fichier FASTA/.txt
  • -st/--seqtype : 'DNA', 'protein', 'translated%20RNA', 'translated%20DNA' (détection automatique)
  • -a/--assembly : Assemblage cible (défaut : 'human'/hg38 ; options : 'mouse'/mm39, 'zebrafinch'/taeGut2, etc.)

Retours : genome, query size, positions d'alignement, correspondances, décalages, pourcentage d'alignement

Exemples :

# Trouver la localisation génomique chez l'humain
gget blat ATCGATCGATCGATCG

# Rechercher dans un assemblage différent
gget blat -a mm39 ATCGATCGATCGATCG
# Python
gget.blat("ATCGATCGATCGATCG", assembly="mouse")

gget muscle - Alignement de séquences multiples

Alignez plusieurs séquences nucléotidiques ou acides aminés en utilisant Muscle5.

Paramètres :

  • fasta : Séquences ou chemin vers fichier FASTA/.txt
  • -s5/--super5 : Utiliser l'algorithme Super5 pour un traitement plus rapide (grands jeux de données)

Retours : Séquences alignées au format ClustalW ou FASTA aligné (.afa)

Exemples :

# Aligner les séquences depuis un fichier
gget muscle sequences.fasta -o aligned.afa

# Utiliser Super5 pour grand jeu de données
gget muscle large_dataset.fasta -s5
# Python
gget.muscle("sequences.fasta", save=True)

gget diamond - Alignement de séquence local

Effectuez un alignement local rapide de protéines ou d'ADN traduit en utilisant DIAMOND.

Paramètres :

  • Query : Séquences (chaîne/liste) ou chemin fichier FASTA
  • --reference : Séquences de référence (chaîne/liste) ou chemin fichier FASTA (requis)
  • --sensitivity : fast, mid-sensitive, sensitive, more-sensitive, very-sensitive (défaut), ultra-sensitive
  • --threads : Threads CPU (défaut : 1)
  • --diamond_db : Enregistrer la base de données pour réutilisation
  • --translated : Activer l'alignement nucléotide-vers-acide aminé

Retours : Pourcentage d'identité, longueurs de séquence, positions de correspondance, ouvertures de lacune, E-values, bit scores

Exemples :

# Aligner contre la référence
gget diamond GGETISAWESQME -ref reference.fasta --threads 4

# Enregistrer la base de données pour réutilisation
gget diamond query.fasta -ref ref.fasta --diamond_db my_db.dmnd
# Python
gget.diamond("GGETISAWESQME", reference="reference.fasta", threads=4)

3. Analyse structurelle et protéique

gget pdb - Structures protéiques

Interrogez la Banque de données de structures protéiques RCSB pour les structures et métadonnées.

Paramètres :

  • pdb_id : Identifiant PDB (ex. '7S7U')
  • -r/--resource : Type de données (pdb, entry, pubmed, assembly, entity types)
  • -i/--identifier : ID d'assemblage, d'entité ou de chaîne

Retours : Format PDB (structures) ou JSON (métadonnées)

Exemples :

# Télécharger la structure PDB
gget pdb 7S7U -o 7S7U.pdb

# Obtenir les métadonnées
gget pdb 7S7U -r entry
# Python
gget.pdb("7S7U", save=True)

gget alphafold - Prédiction de structure protéique

Prédisez les structures 3D de protéines en utilisant AlphaFold2 simplifié.

Configuration requise :

# Installer d'abord OpenMM
uv pip install openmm

# Puis configurer AlphaFold
gget setup alphafold

Paramètres :

  • sequence : Séquence d'acide aminé (chaîne), séquences multiples (liste), ou fichier FASTA. Plusieurs séquences déclenchent la modélisation multimère
  • -mr/--multimer_recycles : Itérations de recyclage (défaut : 3 ; recommandé 20 pour la précision)
  • -mfm/--multimer_for_monomer : Appliquer le modèle multimère à des protéines simples
  • -r/--relax : Relaxation AMBER pour le modèle de plus haut rang
  • plot : Python uniquement ; générer une visualisation 3D interactive (défaut : True)
  • show_sidechains : Python uniquement ; inclure les chaînes latérales (défaut : True)

Retours : Fichier structure PDB, données d'erreur d'alignement JSON, visualisation 3D optionnelle

Exemples :

# Prédire la structure d'une seule protéine
gget alphafold MKWMFKEDHSLEHRCVESAKIRAKYPDRVPVIVEKVSGSQIVDIDKRKYLVPSDITVAQFMWIIRKRIQLPSEKAIFLFVDKTVPQSR

# Prédire un multimère avec plus de précision
gget alphafold sequence1.fasta -mr 20 -r
# Python avec visualisation
gget.alphafold("MKWMFK...", plot=True, show_sidechains=True)

# Prédiction multimère
gget.alphafold(["sequence1", "sequence2"], multimer_recycles=20)

gget elm - Motifs linéaires eucaryotes

Prédisez les motifs linéaires eucaryotes dans les séquences protéiques.

Configuration requise :

gget setup elm

Paramètres :

  • sequence : Séquence d'acide aminé ou accession UniProt
  • -u/--uniprot : Indiquer que la séquence est une accession UniProt
  • -e/--expand : Inclure les noms de protéines, organismes, références
  • -s/--sensitivity : Sensibilité d'alignement DIAMOND (défaut : "very-sensitive")
  • -t/--threads : Nombre de threads (défaut : 1)

Retours : Deux résultats :

  1. ortholog_df : Motifs linéaires des protéines orthologues
  2. regex_df : Motifs directement appariés dans la séquence d'entrée

Exemples :

# Prédire les motifs depuis une séquence
gget elm LIAQSIGQASFV -o results

# Utiliser une accession UniProt avec information étendue
gget elm --uniprot Q02410 -e
# Python
ortholog_df, regex_df = gget.elm("LIAQSIGQASFV")

4. Expression et données de maladie

gget archs4 - Corrélation génique et expression tissulaire

Interrogez la base de données ARCHS4 pour les gènes corrélés ou les données d'expression tissulaire.

Paramètres :

  • gene : Symbole de gène ou ID Ensembl (avec flag --ensembl)
  • -w/--which : 'correlation' (défaut, retourne 100 gènes les plus corrélés) ou 'tissue' (atlas d'expression)
  • -s/--species : 'human' (défaut) ou 'mouse' (données tissulaires uniquement)
  • -e/--ensembl : L'entrée est un ID Ensembl

Retours :

  • Mode corrélation : Symboles de gènes, coefficients de corrélation de Pearson
  • Mode tissu : Identifiants de tissus, valeurs d'expression min/Q1/médiane/Q3/max

Exemples :

# Obtenir les gènes corrélés
gget archs4 ACE2

# Obtenir l'expression tissulaire
gget archs4 -w tissue ACE2
# Python
gget.archs4("ACE2", which="tissue")

gget cellxgene - Données d'ARN-seq unicellulaire

Interrogez CZ CELLxGENE Discover Census pour les données unicellulaires.

Configuration requise :

gget setup cellxgene

Paramètres :

  • --gene (-g) : Noms de gènes ou IDs Ensembl (sensible à la casse ! 'PAX7' pour humain, 'Pax7' pour souris)
  • --tissue : Type(s) de tissu
  • --cell_type : Type(s) de cellule spécifique(s)
  • --species (-s) : 'homo_sapiens' (défaut) ou 'mus_musculus'
  • --census_version (-cv) : Version ("stable", "latest", ou datée)
  • --ensembl (-e) : Utiliser les IDs Ensembl
  • --meta_only (-mo) : Retourner uniquement les métadonnées
  • Filtres supplémentaires : disease, development_stage, sex, assay, dataset_id, donor_id, ethnicity, suspension_type

Retours : Objet AnnData avec matrices de compte et métadonnées (ou dataframes de métadonnées uniquement)

Exemples :

# Obtenir les données unicellulaires pour gènes et types de cellules spécifiques
gget cellxgene --gene ACE2 ABCA1 --tissue lung --cell_type "mucus secreting cell" -o lung_data.h5ad

# Métadonnées uniquement
gget cellxgene --gene PAX7 --tissue muscle --meta_only -o metadata.csv
# Python
adata = gget.cellxgene(gene=["ACE2", "ABCA1"], tissue="lung", cell_type="mucus secreting cell")

gget enrichr - Analyse d'enrichissement

Effectuez une analyse d'enrichissement d'ontologie sur les listes de gènes en utilisant Enrichr.

Paramètres :

  • genes : Symboles de gènes ou IDs Ensembl
  • -db/--database : Base de données de référence (supporte les raccourcis : 'pathway', 'transcription', 'ontology', 'diseases_drugs', 'celltypes')
  • -s/--species : human (défaut), mouse, fly, yeast, worm, fish
  • -bkg_l/--background_list : Gènes de référence pour comparaison
  • -ko/--kegg_out : Enregistrer les images de voies KEGG avec gènes en surbrillance
  • plot : Python uniquement ; générer les résultats graphiques

Raccourcis de base de données :

  • 'pathway' → KEGG_2021_Human
  • 'transcription' → ChEA_2016
  • 'ontology' → GO_Biological_Process_2021
  • 'diseases_drugs' → GWAS_Catalog_2019
  • 'celltypes' → PanglaoDB_Augmented_2021

Exemples :

# Analyse d'enrichissement pour ontologie
gget enrichr -db ontology ACE2 AGT AGTR1

# Enregistrer les voies KEGG
gget enrichr -db pathway ACE2 AGT AGTR1 -ko ./kegg_images/
# Python avec graphique
gget.enrichr(["ACE2", "AGT", "AGTR1"], database="ontology", plot=True)

gget bgee - Orthologie et expression

Récupérez les données d'orthologie et d'expression génique de la base de données Bgee.

Paramètres :

  • ens_id : ID gène Ensembl ou ID gène NCBI (pour espèces non-Ensembl). Plusieurs IDs supportés avec type=expression
  • -t/--type : 'orthologs' (défaut) ou 'expression'

Retours :

  • Mode orthologs : Gènes correspondants entre espèces avec IDs, noms, informations taxonomiques
  • Mode expression : Entités anatomiques, scores de confiance, statut d'expression

Exemples :

# Obtenir les orthologs
gget bgee ENSG00000169194

# Obtenir les données d'expression
gget bgee ENSG00000169194 -t expression

# Plusieurs gènes
gget bgee ENSBTAG00000047356 ENSBTAG00000018317 -t expression
# Python
gget.bgee("ENSG00000169194", type="orthologs")

gget opentargets - Associations maladie et médicament

Récupérez les associations maladie et médicament depuis OpenTargets.

Paramètres :

  • ID gène Ensembl (requis)
  • -r/--resource : diseases (défaut), drugs, tractability, pharmacogenetics, expression, depmap, interactions
  • -l/--limit : Limiter le nombre de résultats
  • Arguments de filtrage (varient par ressource) :
    • drugs : --filter_disease
    • pharmacogenetics : --filter_drug
    • expression/depmap : --filter_tissue, --filter_anat_sys, --filter_organ
    • interactions : --filter_protein_a, --filter_protein_b, --filter_gene_b

Exemples :

# Obtenir les maladies associées
gget opentargets ENSG00000169194 -r diseases -l 5

# Obtenir les médicaments associés
gget opentargets ENSG00000169194 -r drugs -l 10

# Obtenir l'expression tissulaire
gget opentargets ENSG00000169194 -r expression --filter_tissue brain
# Python
gget.opentargets("ENSG00000169194", resource="diseases", limit=5)

gget cbio - Génomique du cancer cBioPortal

Tracez les cartes thermiques de génomique du cancer en utilisant les données de cBioPortal.

Deux sous-commandes :

search - Trouver les IDs d'étude :

gget cbio search breast lung

plot - Générer les cartes thermiques :

Paramètres :

  • -s/--study_ids : IDs d'étude cBioPortal séparés par espaces (requis)
  • -g/--genes : Noms de gènes ou IDs Ensembl séparés par espaces (requis)
  • -st/--stratification : Colonne pour organiser les données (tissue, cancer_type, cancer_type_detailed, study_id, sample)
  • -vt/--variation_type : Type de données (mutation_occurrences, cna_nonbinary, sv_occurrences, cna_occurrences, Consequence)
  • -f/--filter : Filtrer par valeur de colonne (ex. 'study_id:msk_impact_2017')
  • -dd/--data_dir : Répertoire de cache (défaut : ./gget_cbio_cache)
  • -fd/--figure_dir : Répertoire de sortie (défaut : ./gget_cbio_figures)
  • -dpi : Résolution (défaut : 100)
  • -sh/--show : Afficher le graphique dans une fenêtre
  • -nc/--no_confirm : Ignorer les confirmations de téléchargement

Exemples :

# Rechercher des études
gget cbio search esophag ovary

# Créer une carte thermique
gget cbio plot -s msk_impact_2017 -g AKT1 ALK BRAF -st tissue -vt mutation_occurrences
# Python
gget.cbio_search(["esophag", "ovary"])
gget.cbio_plot(["msk_impact_2017"], ["AKT1", "ALK"], stratification="tissue")

gget cosmic - Base de données COSMIC

Interrogez la base de données COSMIC (Catalogue Of Somatic Mutations In Cancer).

Important : Des frais de licence s'appliquent pour l'utilisation commerciale. Nécessite les identifiants de compte COSMIC.

Paramètres :

  • searchterm : Nom de gène, ID Ensembl, notation de mutation, ou ID d'échantillon
  • -ctp/--cosmic_tsv_path : Chemin vers le fichier TSV COSMIC téléchargé (requis pour requêtes)
  • -l/--limit : Résultats maximum (défaut : 100)

Flags de téléchargement de base de données :

  • -d/--download_cosmic : Activer le mode téléchargement
  • -gm/--gget_mutate : Créer une version pour gget mutate
  • -cp/--cosmic_project : Type de base de données (cancer, census, cell_line, resistance, genome_screen, targeted_screen)
  • -cv/--cosmic_version : Version de COSMIC
  • -gv/--grch_version : Génome de référence humain (37 ou 38)
  • --email, --password : Identifiants COSMIC

Exemples :

# D'abord télécharger la base de données
gget cosmic -d --email user@example.com --password xxx -cp cancer

# Puis requête
gget cosmic EGFR -ctp cosmic_data.tsv -l 10
# Python
gget.cosmic("EGFR", cosmic_tsv_path="cosmic_data.tsv", limit=10)

5. Outils supplémentaires

gget mutate - Générer des séquences mutées

Générez des séquences nucléotidiques mutées à partir d'annotations de mutations.

Paramètres :

  • sequences : Chemin vers fichier FASTA ou entrée directe de séquence (chaîne/liste)
  • -m/--mutations : Fichier CSV/TSV ou DataFrame avec données de mutations (requis)
  • -mc/--mut_column : Nom de colonne de mutations (défaut : 'mutation')
  • -sic/--seq_id_column : Colonne ID de séquence (défaut : 'seq_ID')
  • -mic/--mut_id_column : Colonne ID de mutations
  • -k/--k : Longueur des séquences flanquantes (défaut : 30 nucléotides)

Retours : Séquences mutées au format FASTA

Exemples :

# Mutation simple
gget mutate ATCGCTAAGCT -m "c.4G>T"

# Plusieurs séquences avec mutations depuis fichier
gget mutate sequences.fasta -m mutations.csv -o mutated.fasta
# Python
import pandas as pd
mutations_df = pd.DataFrame({"seq_ID": ["seq1"], "mutation": ["c.4G>T"]})
gget.mutate(["ATCGCTAAGCT"], mutations=mutations_df)

gget gpt - Génération de texte OpenAI

Générez du texte en langage naturel en utilisant l'API d'OpenAI.

Configuration requise :

gget setup gpt

Important : L'accès gratuit limité à 3 mois après création de compte. Définissez les limites de facturation mensuelle.

Paramètres :

  • prompt : Entrée textuelle pour la génération (requis)
  • api_key : Authentification OpenAI (requis)
  • Configuration du modèle : temperature, top_p, max_tokens, frequency_penalty, presence_penalty
  • Modèle par défaut : gpt-3.5-turbo (configurable)

Exemples :

gget gpt "Explain CRISPR" --api_key your_key_here
# Python
gget.gpt("Explain CRISPR", api_key="your_key_here")

gget setup - Installer les dépendances

Installez/téléchargez les dépendances tierces pour des modules spécifiques.

Paramètres :

  • module : Nom du module nécessitant installation de dépendance
  • -o/--out : Chemin du dossier de sortie (module elm uniquement)

Modules nécessitant configuration :

  • alphafold - Télécharge ~4GB de paramètres de modèle
  • cellxgene - Installe cellxgene-census (peut ne pas supporter Python récent)
  • elm - Télécharge la base de données ELM locale
  • gpt - Configure l'intégration OpenAI

Exemples :

# Configurer AlphaFold
gget setup alphafold

# Configurer ELM avec répertoire personnalisé
gget setup elm -o /path/to/elm_data
# Python
gget.setup("alphafold")

Flux de travail courants

Flux 1 : Découverte de gènes pour analyse de séquence

Trouvez et analysez les gènes d'intérêt :

# 1. Rechercher des gènes
results = gget.search(["GABA", "receptor"], species="homo_sapiens")

# 2. Obtenir des informations détaillées
gene_ids = results["ensembl_id"].tolist()
info = gget.info(gene_ids[:5])

# 3. Récupérer les séquences
sequences = gget.seq(gene_ids[:5], translate=True)

Flux 2 : Alignement de séquence et structure

Alignez les séquences et prédisez les structures :

# 1. Aligner plusieurs séquences
alignment = gget.muscle("sequences.fasta")

# 2. Trouver les séquences similaires
blast_results = gget.blast(my_sequence, database="swissprot", limit=10)

# 3. Prédire la structure
structure = gget.alphafold(my_sequence, plot=True)

# 4. Trouver les motifs linéaires
ortholog_df, regex_df = gget.elm(my_sequence)

Flux 3 : Expression génique et enrichissement

Analysez les modèles d'expression et l'enrichissement fonctionnel :

# 1. Obtenir l'expression tissulaire
tissue_expr = gget.archs4("ACE2", which="tissue")

# 2. Trouver les gènes corrélés
correlated = gget.archs4("ACE2", which="correlation")

# 3. Obtenir les données unicellulaires
adata = gget.cellxgene(gene=["ACE2"], tissue="lung", cell_type="epithelial cell")

# 4. Effectuer une analyse d'enrichissement
gene_list = correlated["gene_symbol"].tolist()[:50]
enrichment = gget.enrichr(gene_list, database="ontology", plot=True)

Flux 4 : Analyse de maladie et de médicament

Enquêter sur les associations maladie et les cibles thérapeutiques :

# 1. Rechercher des gènes
genes = gget.search(["breast cancer"], species="homo_sapiens")

# 2. Obtenir les associations maladie
diseases = gget.opentargets("ENSG00000169194", resource="diseases")

# 3. Obtenir les associations médicament
drugs = gget.opentargets("ENSG00000169194", resource="drugs")

# 4. Requête les données de génomique du cancer
study_ids = gget.cbio_search(["breast"])
gget.cbio_plot(study_ids[:2], ["BRCA1", "BRCA2"], stratification="cancer_type")

# 5. Rechercher des mutations COSMIC
cosmic_results = gget.cosmic("BRCA1", cosmic_tsv_path="cosmic.tsv")

Flux 5 : Génomique comparative

Comparez les protéines entre espèces :

# 1. Obtenir les orthologs
orthologs = gget.bgee("ENSG00000169194", type="orthologs")

# 2. Obtenir les séquences pour comparaison
human_seq = gget.seq("ENSG00000169194", translate=True)
mouse_seq = gget.seq("ENSMUSG00000026091", translate=True)

# 3. Aligner les séquences
alignment = gget.muscle([human_seq, mouse_seq])

# 4. Comparer les structures
human_structure = gget.pdb("7S7U")
mouse_structure = gget.alphafold(mouse_seq)

Flux 6 : Construction d'indices de référence

Préparez les données de référence pour analyse en aval (ex. kallisto|bustools) :

# 1. Lister les espèces disponibles
gget ref --list_species

# 2. Télécharger les fichiers de référence
gget ref -w gtf -w cdna -d homo_sapiens

# 3. Construire l'index kallisto
kallisto index -i transcriptome.idx transcriptome.fasta

# 4. Télécharger le génome pour alignement
gget ref -w dna -d homo_sapiens

Bonnes pratiques

Récupération de données

  • Utiliser --limit pour contrôler les tailles de résultats pour les grandes requêtes
  • Enregistrer les résultats avec -o/--out pour la reproductibilité
  • Vérifier les versions/releases de base de données pour cohérence entre analyses
  • Utiliser --quiet dans les scripts de production pour réduire la sortie

Analyse de séquence

  • Pour BLAST/BLAT, commencer avec les paramètres par défaut, puis ajuster la sensibilité
  • Utiliser gget diamond avec --threads pour un alignement local plus rapide
  • Enregistrer les bases de données DIAMOND avec --diamond_db pour requêtes répétées
  • Pour alignement de séquences multiples, utiliser -s5/--super5 pour grands jeux de données

Expression et données de maladie

  • Les symboles de gènes sont sensibles à la casse dans cellxgene (ex. 'PAX7' vs 'Pax7')
  • Exécuter gget setup avant première utilisation d'alphafold, cellxgene, elm, gpt
  • Pour analyse d'enrichissement, utiliser les raccourcis de base de données pour commodité
  • Mettre en cache les données de cBioPortal avec -dd pour éviter les téléchargements répétés

Prédiction de structure

  • Prédictions AlphaFold multimère : utiliser -mr 20 pour plus de précision
  • Utiliser le flag -r pour relaxation AMBER des structures finales
  • Visualiser les résultats en Python avec plot=True
  • Vérifier d'abord la base de données PDB avant d'exécuter les prédictions AlphaFold

Gestion des erreurs

  • Les structures de base de données changent ; mettre à jour gget régulièrement : uv pip install --upgrade gget
  • Traiter max ~1000 IDs Ensembl à la fois avec gget info
  • Pour analyses à grande échelle, mettre en place le rate limiting pour requêtes API
  • Utiliser les environnements virtuels pour éviter les conflits de dépendances

Formats de sortie

Ligne de commande

  • Défaut : JSON
  • CSV : Ajouter le flag -csv
  • FASTA : gget seq, gget mutate
  • PDB : gget pdb, gget alphafold
  • PNG : gget cbio plot

Python

  • Défaut : DataFrame ou dictionnaire
  • JSON : Ajouter le paramètre json=True
  • Enregistrer dans un fichier : Ajouter save=True ou spécifier out="filename"
  • AnnData : gget cellxgene

Ressources

Cette compétence inclut la documentation de référence pour informations détaillées sur les modules :

references/

  • module_reference.md - Référence de paramètres complète pour tous les modules
  • database_info.md - Informations sur les bases de données interrogées et fréquences de mise à jour
  • workflows.md - Exemples de flux de travail étendu et cas d'usage

Pour aide supplémentaire :

Skills similaires