ncov2019-ont-nf
Nextflow pipeline to process SARS-CoV-2 genomes by Nanopore Sequencing using ARTIC (https://github.com/artic-network/fieldbioinformatics) tools
Science Score: 57.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
✓DOI references
Found 2 DOI reference(s) in README -
○Academic publication links
-
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (3.6%) to scientific vocabulary
Keywords
Repository
Nextflow pipeline to process SARS-CoV-2 genomes by Nanopore Sequencing using ARTIC (https://github.com/artic-network/fieldbioinformatics) tools
Basic Info
Statistics
- Stars: 2
- Watchers: 1
- Forks: 1
- Open Issues: 0
- Releases: 8
Topics
Metadata Files
README.es.md
Pipeline para Análisis de nCoV-2019 con Oxford Nanopore
Pipeline en Nextflow para el ensamblaje y posterior análisis de genomas de SARS-CoV-2. Utiliza el protocolo bioinformático de ARTIC, por lo que es necesario haber utilizado el protocolo de ARTIC para la secuenciación (más información).
Desarrollado para sistematizar el análisis bioinformático asociado a la vigilancia genómica realizada en el Centro Asistencial Docente y de Investigación de la Universidad de Magallanes. Más información sobre nosotros en catg.cl.
Actualmente incluye:
- Ensamblaje y obtención de variantes usando ARTIC
- Anotación de variantes usando SnpEff (gen, cambio de aminoácido)
- Identificación de linajes de Pangolin y Nexstrain (incluyendo nombre común de variante)
- Recolección de métricas de calidad y estadísticas (qc, coverage, etc)
- Generación de resumen final en formato Excel incluyendo la información más relevante obtenida en la ejecución del pipeline
- Preparación de planilla y secuencias para ser subidas a GISAID
Inicio Rápido
- Instalar Nextflow y Singularity (o Docker)
- Crear un archivo CSV con las columnas
sampleyfastq_file, que asocie los nombres de las muestras con los datos en FASTQ. Si se planea la carga en GISAID, es recomendable tener una tercera columna:gisaid_covv_virus_name, que tenga los nombres que se utilizarán para subir las muestras a GISAID (debe tener el formatohCoV-19/<Pais>/<ID>/<Año>). - Ejecutar el pipeline. Ejemplos:
Usando Apptainer:
bash
nextflow run catg-umag/ncov2019-ont-nf -r v2.0.0 -profile apptainer \
--sample_data <csv_file>
Usando Nanopolish en lugar de Medaka, con Docker:
bash
nextflow run catg-umag/ncov2019-ont-nf -r v2.0.0 -profile docker \
--sample_data <csv_file> --artic_use_nanopolish \
--fast5_directory <fast5_dir> --sequencing_summary <txt_file>
- Esperar a que finalice la ejecución. En
results/se encontrarán los archivos entregados por el pipeline.
Requisitos
Debido a Nextflow, los sistemas operativos soportados son GNU/Linux y MacOS. En caso de querer de todas maneras utilizarlo en Windows, es necesario usar WSL.
Utilización del Pipeline
Entradas
Este pipeline está diseñado para trabajar con datos después de haber realizado basecalling y demultiplexación, o sea los archivos FASTQ. De no tener ese proceso realizado, o querer realizar basecalling con mayor calidad, se puede realizar con este pipeline.
Entonces, las entradas requeridas son:
- Un archivo CSV con el detalle de las muestras (ver más abajo)
- Un archivo FASTQ único por muestra (comprimido o no). Guppy por defecto genera una carpeta con múltiples archivos FASTQ, por lo que si se desea utilizar estos datos, es necesario concatenarlos antes.
- (Sólo si se desea utilizar Nanopolish en lugar de Medaka). El subdirectorio pass del directorio con los archivos FASTQ generados el basecalling, y también el archivo sequencing_summary.txt
Cómo preparar el archivo de detalle de muestras
Este archivo (en formato CSV) debe contar con al menos dos columnas: sample y fastq_file, en el cual se asocie cada muestra a un archivo FASTQ.
El campo sample será utilizado para nombrar todos los archivos asociados a cada muestra, por lo que es ideal que sea algo sencillo, ojalá sólo letras y números. Además de las dos columnas requeridas se pueden incluir columnas adicionales, las cuales serán "traspasadas" al resumen final.
Otro conjunto de campos que puede incluir este archivo son relevantes si se desea subir los datos a GISAID. Estos corresponden a cualquiera de las columnas de la plantilla de carga de datos de GISAID (disponible en data/), que deben ser indicados con el prefijo gisaid_ seguido del nombre en la primera fila de la plantilla. Como recomendación, sería conveniente incluir al menos covv_virs_name, ya que este campo será utilizado para renombrar las secuencias en el archivo FASTA de forma de que correspondan a los nombres indicados en esta columna, proceso que deberá realizarse de forma manual en caso de no proveer estos valores. Revisar la plantilla para ver cuáles son los campos disponibles y cómo deben ser llenados. Algunas columnas serán llenadas aunque no sean especificadas, éstas son: fn, covv_type, covv_passage, covv_host, covv_seq_technology, covv_assembly_method y covv_coverage. Será necesario rellenar manualmente los campos obligatorios que falten para que la plataforma acepte la carga.
Por ejemplo, para las siguientes 5 muestras se incluyó el campo adicional city (el cual figurará en el resumen final), además de covv_virus_name, covv_collection_date y covv_location para ser utilizados en la plantilla de carga.
sample,barcode,city,gisaid_covv_virus_name,gisaid_covv_collection_date,gisaid_covv_location
2101011,barcode01,Punta Arenas,hCoV-19/Chile/CADIUMAG-51/2021,2021-05-20,South America / Chile / Magallanes / Punta Arenas
2101018,barcode02,Punta Arenas,hCoV-19/Chile/CADIUMAG-52/2021,2021-05-20,South America / Chile / Magallanes / Punta Arenas
2101053,barcode03,Punta Arenas,hCoV-19/Chile/CADIUMAG-53/2021,2021-05-20,South America / Chile / Magallanes / Punta Arenas
2101025,barcode04,Punta Arenas,hCoV-19/Chile/CADIUMAG-54/2021,2021-05-20,South America / Chile / Magallanes / Punta Arenas
2105001,barcode05,Punta Arenas,hCoV-19/Chile/CADIUMAG-55/2021,2021-05-20,South America / Chile / Magallanes / Punta Arenas
Parámetros
Además de la posibilidad de especificar los inputs, es posible controlar algunos aspectos del pipeline a través de parámetros. El listado de parámetros disponibles es el siguiente:
| Parámetro | Requerido | Valor Por defecto | Descripción |
| -------------------------- | --------- | ---------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| sampledata | sí | --- | Archivo delimitado por comas con el detalle de las muestras. |
| fast5directory | no | --- | Ruta al subdirectorio pass de FAST5 obtenido en la secuenciación, sólo en caso de ocupar Nanopolish. |
| sequencingsummary | no | --- | Resumen obtenido en el proceso de basecalling. Requerido si se proveen datos en FASTQ. |
| runid | no | "" | ID opcional para la secuenciación que se utilizará como sufijo en los nombres de archivos de los resúmenes y recopilaciones de datos. |
| articprimerscheme | no | SARS-CoV-2/V4.1 | Esquema de primers de ARTIC utilizado al construir la librería. |
| articmedakamodel | no | r103hacg507 | Modelo de Medaka (debe coincidir con el modelo utilizado par el basecalling). |
| articusenanopolish | no | false | Usar Nanopolish en lugar de Medaka para el pulido. |
| articnormalise | no | 500 | Valor para establecer un valor de cobertura objetivo en el pipeline de ARTIC. |
| gisaidtemplate | no | data/20210222EpiCoV....xlsx | Ruta al template utilizado para subir muestras a GISAID (disponible en repositorio). |
| gisaidsubmissionenabled | no | true | Habilitar (o no) la generación de los archivos preparados para cargar datos a GISAID. |
| publishminimumcompletion | no | 95 | Valor entre 0 - 100 que indica el porcentaje de bases cubiertas respecto al genoma que se requerirá para la inclusión de estas muestras en la carga de GISAID. |
| multiqcconfig | no | conf/multiqcconfig.yaml | Archivo de configuración de MultiQC (ya se incluye uno). |
| outputdirectory | no | results | Directorio en el cual se almacenaran los resultados. |
El listado y lo valores por defecto se encuentran en el archivo params.default.yml.
Los parámetros pueden ser indicados a través de la línea de comandos (por ejemplo --run_id 20210501A), pero también pueden pasarse a través de un archivo en formato YAML, se puede utilizar como plantilla el archivo params.default.yml (no mover o editar el archivo en sí, ya que es necesario).
Ejecución
El pipeline puede descargarse directamente y e indicar a Nextflow la ruta donde este se encuentra, pero también puede indicarse directamente catg-umag/ncov2019-ont-n y una versión a través del argumento -r, lo que descargará automáticamente el pipeline. Por ejemplo:
bash
nextflow run catg-umag/ncov2019-ont-nf -r v2.0.0 -profile apptainer ...
Es imperativo utilizar el perfil singularity o docker para que utilice contenedores para acceder a las herramientas requeridas. De lo contrario, no funcionará.
Ejemplo con basecalling utilizando parámetros a través de línea de comandos:
bash
nextflow run ncov2019-ont-nf/ -profile apptainer --sample_data input/samples.csv --run_id R210505
Ejemplo utilizando parámetros mediant archivo YAML:
params.yml:
yaml
sample_data: input/samples.csv
run_id: R210505
artic_medaka_model: r941_min_hac_g507
artic_normalise: 1000
gisaid_submission_enabled: false
bash
nextflow run ncov2019-ont-nf/ -profile apptainer -params-file params.yml
El pipeline por defecto se ejecutará de manera local, pero en caso de querer ejecutarlo en un clúster de cómputo que utilice Slurm, puede especificarse mediante el perfil slurm. Y no olvidar también el perfil de singularity (este debe estar instalado en el clúster): -profile slurm,singularity.
Resultados
Dentro del directorio de resultados (results/ por defecto), se encontrará lo siguiente:
fastq_data/: archivos FASTQ para cada muestra, después de filtros de largoartic/: resultados de la ejecución del pipeline de ARTIC para cada una de las muestrasqc/: métricas de calidad y cobertura del genoma para cada una de las muestrasvcf/: archivos VCF (variaciones en el genoma) para cada una de las muestras, anotadas con SnpEfflineages/: resultados sin procesar de las identificaciones de linajessummary/: directorio con resúmenes de la información más relevante recolectada en el pipeline:all_consensus.fasta: archivo FASTA con los consensos para todas las muestras (incluso las incompletas)sample_summary.csv: archivo CSV con la información incluída en el archivo de entrada, linajes y métricas de coberturavariants_list.csv: archivo CSV con las variantes para todas las muestras con su información esencialsummary.xlsx: archivo Excel con la información de las muestras en la primera hoja, y un resúmen de presencia de las diferentes variantes en las muestras en la segunda (las cuales son reordenadas dependiendo de su similitud considerando las variantes que poseen).
gisaid_submission/: si fue habilitada la opción de preparar la carga a GISAID, en este directory se encontrará un archivo FASTA filtrado por el criterio de cobertura y con las secuencias renombrados si se indicaron los nombres, además de la planilla Excel llenado con la información disponible (podría aún requerir llenar campos manualmente)
Cómo Citar
Si este trabajo te fue de utilidad, puedes citarlo a través del siguiente artículo:
González-Puelma, J.; Aldridge, J.; Montes de Oca, M.; Pinto, M.; Uribe-Paredes, R.; Fernández-Goycoolea, J.; Alvarez-Saravia, D.; Álvarez, H.; Encina, G.; Weitzel, T.; Muñoz, R.; Olivera-Nappa, Á.; Pantano, S.; Navarrete, M.A. Mutation in a SARS-CoV-2 Haplotype from Sub-Antarctic Chile Reveals New Insights into the Spike’s Dynamics. Viruses 2021, 13, 883. https://doi.org/10.3390/v13050883
Software Utilizado
- ARTIC y todas sus dependencias
- Python y sus librerías: biopython, openpyxl, pandas, scipy
- Herramientas bioinformáticas: FastQC, MultiQC, samtools, SnpEff, Nextclade, Pangolin
- Otros: Nextflow, libreoffice
Owner
- Name: Centro Austral de Tecnología Genómica
- Login: catg-umag
- Kind: organization
- Location: Punta Arenas, Chile
- Website: catg.cl
- Repositories: 3
- Profile: https://github.com/catg-umag
Citation (CITATION.cff)
cff-version: 1.2.0
message: "If this repository was useful for you, please cite it as below."
authors:
- family-names: "Alvarez"
given-names: "Diego"
orcid: "https://orcid.org/0000-0003-0753-274X"
- family-names: "Aldridge"
given-names: "Jacqueline"
orcid: "https://orcid.org/0000-0003-3491-6589"
title: "nCoV-2019 Analysis Pipeline (Oxford Nanopore)"
url: "https://github.com/catg-umag/ncov2019-ont-nf"
preferred-citation:
type: article
authors:
- family-names: "González-Puelma"
given-names: "Jorge"
- family-names: "Aldridge"
given-names: "Jacqueline"
orcid: "https://orcid.org/0000-0003-3491-6589"
- family-names: "Montes de Oca"
given-names: "Marco"
orcid: "https://orcid.org/0000-0002-3333-4977"
- family-names: "Pinto"
given-names: "Mónica"
- family-names: "Uribe-Paredes"
given-names: "Roberto"
orcid: "https://orcid.org/0000-0001-9519-8862"
- family-names: "Fernández-Goycoolea"
given-names: "José"
orcid: "https://orcid.org/0000-0001-5349-4348"
- family-names: "Alvarez-Saravia"
given-names: "Diego"
orcid: "https://orcid.org/0000-0003-0753-274X"
- family-names: "Álvarez"
given-names: "Hermy"
- family-names: "Encina"
given-names: "Gonzalo"
- family-names: "Wietzel"
given-names: "Thomas"
orcid: "https://orcid.org/0000-0002-9804-2123"
- family-names: "Muñoz"
given-names: "Rodrigo"
- family-names: "Olivera-Nappa"
given-names: "Álvaro"
orcid: "https://orcid.org/0000-0001-6053-7019"
- family-names: "Pantano"
given-names: "Sergio"
orcid: "https://orcid.org/0000-0001-6435-4543"
- family-names: "Navarrete"
given-names: "Marcelo A."
orcid: "https://orcid.org/0000-0002-2044-9548"
title: "Mutation in a SARS-CoV-2 Haplotype from Sub-Antarctic Chile Reveals New Insights into the Spike's Dynamics"
doi: "10.3390/v13050883"
journal: "Viruses"
publisher:
name: "MDPI AG"
volume: 13
issue: 5
start: 883
year: 2021
month: 5
GitHub Events
Total
- Watch event: 1
Last Year
- Watch event: 1
Dependencies
- biopython ==1.79
- openpyxl ==3.0.9
- pandas ==1.4.0
- scipy ==1.7.3
- actions/checkout v2 composite
- docker/build-push-action v2 composite
- docker/login-action v1 composite
- docker/setup-buildx-action v1 composite
- ubuntu 20.04 build