smoove
simplifica y acelera la llamada y el genotipado de SV para lecturas breves. También mejora la especificidad al eliminar muchas señales de alineación espurias que son indicativas de ruido de bajo nivel y que a menudo contribuyen a llamadas espurias.
Hay una publicación de blog que describe smoove
con más detalle aquí.
Admite cohortes pequeñas en un solo comando y llamadas a nivel de población con 4 pasos en total, 2 de los cuales son paralelos por muestra.
Hay una tabla sobre la precisión y recuperación de smoove y duphold (que usa smoove) aquí
Requiere:
Y opcionalmente (pero todo muy recomendable):
Ejecutar smoove
sin ningún argumento mostrará cuáles de estos se encuentran para que puedan agregarse a la RUTA según sea necesario.
smoove
:
lumpy_filter
para extraer lecturas divididas y discordantes requeridas por lumpylumpy_filter
para eliminar regiones espurias y de alta cobertura y cromos especificados por el usuario como 'hs37d5'; También eliminará las lecturas que hayamos encontrado que probablemente sean señales espurias. después de esto, eliminará las lecturas singleton (donde uno de los filtros anteriores eliminó la relación matemática) de los bams discordantes. Esto hace que lumpy
sea mucho más rápido y requiera menos memoria. puedes obtener smoove
y todas las dependencias a través de una imagen acoplable (grande):
docker pull brentp/smoove
docker run -it brentp/smoove smoove -h
O puede descargar un binario smoove
desde aquí: https://github.com/brentp/smoove/releases Cuando se ejecuta sin ningún argumento, smoove
le mostrará cuáles de sus dependencias puede encontrar para que pueda ajustar su $PATH e instalar respectivamente.
para cohortes pequeñas es posible obtener un VCF genotipado llamado conjuntamente en un solo comando .
smoove call -x --name my-cohort --exclude $bed --fasta $reference_fasta -p $threads --genotype /path/to/*.bam
la salida irá a ./my-cohort-smoove.genotyped.vcf.gz
Se recomienda encarecidamente --exclude $bed
, ya que se puede utilizar para ignorar lecturas que se superponen a regiones problemáticas.
Un buen conjunto de regiones para GRCh37 está aquí.
Y para hg38 aquí
Para llamadas a nivel de población (cohortes grandes), los pasos son:
smoove call --outdir results-smoove/ --exclude $bed --name $sample --fasta $reference_fasta -p 1 --genotype /path/to/$sample.bam
Para cohortes grandes, es mejor realizar paralelización entre muestras en lugar de utilizar grandes subprocesos de $ por muestra. smoove
solo puede paralelizar hasta 2 o 3 subprocesos en una sola muestra y es más eficiente usar 1 subproceso.
la salida irá a `resultados-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
Esto agrega una etiqueta SHQ
(Smoove Het Quality) a cada formato de muestra). Un valor de 4 es una llamada de alta calidad y el valor de 1 es de baja calidad. -1 es no caliente. También agrega un MSHQ
para SHQ medio al campo INFO, que es la puntuación SHQ media en todas las muestras heterocigotas para esa variante.
Como primer paso, los usuarios pueden buscar variantes con MSHQ > 3. Si agregó anotaciones duphold, también es útil verificar eliminaciones con DHFFC < 0.7
y duplicaciones con DHFFC > 1.25
.
Un pánico con un mensaje como Segmentation fault (core dumped) | bcftools view -O z -c 1 -o
probablemente signifique que tiene una versión antigua de bcftools. ver #10
smoove
escribirá en el sistema TMPDIR. Para grupos grandes, asegúrese de configurarlo en algo con mucho espacio. por ejemplo, export TMPDIR=/path/to/big
smoove
requiere una versión reciente de lumpy
y lumpy_filter
así que constrúyalos desde el código fuente u obtenga la versión más reciente de bioconda.
svtools