scvi-tools
Analyser les données de génomique unicellulaire
Également disponible depuis: davila7
L'analyse de génomique unicellulaire nécessite des modèles probabilistes pour gérer le bruit technique et les effets de lot. scvi-tools fournit des modèles génératifs profonds utilisant l'inférence variationnelle pour la réduction de dimensionnalité, la correction de lot, l'expression différentielle et l'intégration multi-modale de données unicellulaires.
Télécharger le ZIP du skill
Importer dans Claude
Allez dans Paramètres → Capacités → Skills → Importer un skill
Activez et commencez à utiliser
Tester
Utilisation de "scvi-tools". Aidez-moi à configurer scVI pour la correction de lot sur mon ensemble de données unicellulaires avec deux lots.
Résultat attendu:
```python
import scvi
import scanpy as sc
# Preprocess data
adata = sc.read_h5ad("my_single_cell_data.h5ad")
sc.pp.filter_genes(adata, min_counts=3)
# Register data with batch information
scvi.model.SCVI.setup_anndata(
adata,
layer="counts",
batch_key="batch"
)
# Train model
model = scvi.model.SCVI(adata)
model.train()
# Get batch-corrected latent representation
latent = model.get_latent_representation()
adata.obsm["X_scVI"] = latent
# Downstream analysis
sc.pp.neighbors(adata, use_rep="X_scVI")
sc.tl.umap(adata)
sc.tl.leiden(adata)
```
Utilisation de "scvi-tools". Comment identifier les gènes marqueurs entre deux types cellulaires dans mon modèle scVI ?
Résultat attendu:
```python
# Differential expression between two groups
de_results = model.differential_expression(
groupby="leiden",
group1="0", # Cluster 0
group2="1", # Cluster 1
mode="change",
delta=0.25 # Minimum effect size
)
# View top differentially expressed genes
print(de_results.head(20))
# Filter for significant genes
significant_genes = de_results[
(de_results['is_de_fdr_0.05']) &
(de_results['bayes_factor'] > 1)
]
print(f"Found {len(significant_genes)} differentially expressed genes")
```
Audit de sécurité
Risque faibleThis is a documentation-only skill containing markdown reference files for scvi-tools, a legitimate Python library for single-cell genomics analysis. All 399 static findings are false positives caused by incorrect pattern matching: Python code examples in documentation were flagged as shell commands, bioinformatics statistical terms were misidentified as cryptographic algorithms, and documentation URLs were flagged as hardcoded URLs. No executable code or malicious patterns exist. Safe for publication.
Facteurs de risque
🌐 Accès réseau (1)
📁 Accès au système de fichiers
Score de qualité
Ce que vous pouvez construire
Correction de lot pour l'analyse unicellulaire intégrée
Éliminer les effets de lot techniques des ensembles de données RNA-seq unicellulaires provenant de plusieurs donneurs, protocoles ou séquençages en utilisant scVI pour créer des atlas cellulaires unifiés et intégrés.
Expression différentielle avec incertitude
Identifier les gènes différentiellement exprimés entre types cellulaires ou conditions avec des estimations d'incertitude probabilistes, fournissant des conclusions statistiques plus fiables pour la validation en aval.
Intégration de données multi-modales
Analyser conjointement les mesures d'ARN et de protéines appariées (CITE-seq) ou les données d'accessibilité de la chromatine pour découvrir des populations cellulaires avec une résolution biologique améliorée.
Essayez ces prompts
Aidez-moi à configurer scvi-tools pour analyser mes données RNA-seq unicellulaires. J'ai un objet AnnData avec des données de comptage brut et je veux effectuer une correction de lot. Montrez-moi comment enregistrer les données, entraîner le modèle et extraire les représentations latentes.
J'ai entraîné un modèle scVI sur mon ensemble de données unicellulaires avec des annotations de types cellulaires. Aidez-moi à identifier les gènes différentiellement exprimés entre deux types cellulaires (par exemple, cluster A vs cluster B) en utilisant la méthode differential_expression. Incluez comment interpréter les résultats et définir les seuils de taille d'effet.
J'ai des données CITE-seq appariées avec des comptages d'ARN et des comptages de protéines dérivés d'anticorps. Aidez-moi à configurer totalVI pour modéliser conjointement les deux modalités, entraîner le modèle et extraire des représentations latentes jointes qui capturent la variation d'ARN et de protéines.
J'ai un ensemble de données de référence unicellulaire avec des annotations de types cellulaires et un ensemble de données de transcriptomique spatiale avec des comptages au niveau des spots. Aidez-moi à utiliser DestVI ou Stereoscope pour déconvoluer les types cellulaires dans les données spatiales et créer des cartes de proportions de types cellulaires.
Bonnes pratiques
- Toujours fournir des données de comptage brutes et non normalisées aux modèles scvi-tools pour une modélisation probabiliste précise
- Enregistrer toutes les covariables techniques connues (lot, donneur, protocole) lors de la configuration pour améliorer la correction de lot
- Sauvegarder régulièrement les modèles entraînés en utilisant model.save() pour éviter le réentraînement sur de grands ensembles de données
- Utiliser l'accélération GPU (accelerator="gpu") lors de l'entraînement sur des ensembles de données avec plus de 50 000 cellules
Éviter
- Ne pas utiliser de données normalisées en log comme entrée - les modèles scvi-tools attendent des données de comptage brut
- Ne pas ignorer le filtrage des données (gènes/cellules à faible comptage) avant l'entraînement car cela affecte la qualité du modèle
- Ne pas interpréter les représentations latentes sans validation contre des marqueurs biologiques connus
- Ne pas utiliser scvi-tools pour l'analyse RNA-seq en vrac - il est conçu spécifiquement pour les données unicellulaires
Foire aux questions
Quelle est la différence entre scVI et scanpy pour l'analyse unicellulaire ?
Ai-je besoin d'un GPU pour utiliser scvi-tools ?
Quels formats de données scvi-tools prend-il en charge ?
Comment choisir entre scVI, scANVI et totalVI ?
Que retourne la méthode differential_expression ?
Comment sauvegarder et charger les modèles scvi-tools entraînés ?
Détails du développeur
Structure de fichiers