smoove
simplifie et accélère l'appel et le génotypage des SV pour des lectures courtes. Il améliore également la spécificité en supprimant de nombreux signaux d'alignement parasites qui indiquent un bruit de faible niveau et contribuent souvent à des appels parasites.
Il y a un article de blog décrivant smoove
plus en détail ici
Il prend en charge à la fois de petites cohortes dans une seule commande et des appels au niveau de la population avec 4 étapes au total, dont 2 sont parallèles par échantillon.
Il y a un tableau sur la précision et le rappel de smoove et duphold (qui est utilisé par smoove) ici
Cela nécessite :
Et en option (mais le tout fortement recommandé) :
Exécuter smoove
sans aucun argument montrera lesquels d'entre eux sont trouvés afin qu'ils puissent être ajoutés au PATH si nécessaire.
smoove
va :
lumpy_filter
pour extraire les lectures fractionnées et discordantes requises par lumpylumpy_filter
pour supprimer les régions parasites à couverture élevée et les chromes spécifiés par l'utilisateur comme « hs37d5 » ; cela supprimera également les lectures qui, selon nous, sont probablement des signaux parasites. après cela, il supprimera les lectures singleton (où le partenaire a été supprimé par l'un des filtres précédents) des bams discordants. Cela rend lumpy
beaucoup plus rapide et moins gourmand en mémoire. vous pouvez obtenir smoove
et toutes les dépendances via une (grande) image Docker :
docker pull brentp/smoove
docker run -it brentp/smoove smoove -h
Ou, vous pouvez télécharger un binaire smoove
à partir d'ici : https://github.com/brentp/smoove/releases Lorsqu'il est exécuté sans aucun argument, smoove
vous montrera quelles dépendances il peut trouver afin que vous puissiez ajuster votre $PATH et installer par conséquent.
pour les petites cohortes, il est possible d'obtenir un VCF génotypé appelé conjointement en une seule commande .
smoove call -x --name my-cohort --exclude $bed --fasta $reference_fasta -p $threads --genotype /path/to/*.bam
la sortie ira à ./my-cohort-smoove.genotyped.vcf.gz
le --exclude $bed
est fortement recommandé car il peut être utilisé pour ignorer les lectures qui chevauchent les régions problématiques.
Un bon ensemble de régions pour GRCh37 est ici.
Et pour hg38 ici
Pour les appels au niveau de la population (grandes cohortes), les étapes sont les suivantes :
smoove call --outdir results-smoove/ --exclude $bed --name $sample --fasta $reference_fasta -p 1 --genotype /path/to/$sample.bam
Pour les grandes cohortes, il est préférable de paralléliser les échantillons plutôt que d'utiliser un grand nombre de threads par échantillon. smoove
ne peut paralléliser que jusqu'à 2 ou 3 threads sur un seul échantillon et il est plus efficace d'utiliser 1 thread.
la sortie ira à `results-smoove/$sample-smoove.genotyped.vcf.gz``
# this will create ./merged.sites.vcf.gz
smoove merge --name merged -f $reference_fasta --outdir ./ results-smoove/*.genotyped.vcf.gz
smoove genotype -d -x -p 1 --name $sample-joint --outdir results-genotped/ --fasta $reference_fasta --vcf merged.sites.vcf.gz /path/to/$sample.$bam
smoove paste --name $cohort results-genotyped/*.vcf.gz
smoove annotate --gff Homo_sapiens.GRCh37.82.gff3.gz $cohort.smoove.square.vcf.gz | bgzip -c > $cohort.smoove.square.anno.vcf.gz
Cela ajoute une balise SHQ
(Smoove Het Quality) à chaque format d'échantillon) une valeur de 4 est un appel de haute qualité et la valeur de 1 est une qualité faible. -1 n'est pas het. Il ajoute également un MSHQ
pour Mean SHQ au champ INFO qui est le score SHQ moyen sur tous les échantillons hétérozygotes pour cette variante.
Dans un premier temps, les utilisateurs peuvent rechercher des variantes avec MSHQ > 3. Si vous avez ajouté des annotations de duphold, il est également utile de vérifier les suppressions avec DHFFC < 0.7
et les duplications avec DHFFC > 1.25
.
Une panique avec un message du type Segmentation fault (core dumped) | bcftools view -O z -c 1 -o
signifie probablement que vous disposez d'une ancienne version de bcftools. voir #10
smoove
écrira dans le système TMPDIR. Pour les grandes cohortes, assurez-vous de définir cela sur quelque chose avec beaucoup d'espace. par exemple, export TMPDIR=/path/to/big
smoove
nécessite une version récente de lumpy
et lumpy_filter
alors construisez-les à partir des sources ou obtenez la version la plus récente de bioconda.
outils sv