Share via


Illumina Platinum Genomes

Il sequenziamento dell'intero genoma consente a ricercatori di tutto il mondo di caratterizzare il genoma umano in modo più completo e accurato. Ciò richiede un catalogo completo, dell'intero genoma, di varianti ad alta confidenza chiamate in un insieme di genomi come benchmark. Illumina ha generato dati approfonditi della sequenza dell'intero genoma di 17 individui in un pedigree di tre generazioni. Illumina ha chiamato le varianti in ogni genoma usando una serie di algoritmi attualmente disponibili.

Per altre informazioni sui dati, vedere il sito ufficiale Illumina.

Nota

Microsoft fornisce set di dati aperti di Azure “così come sono”. Microsoft non fornisce alcuna garanzia, espressa o implicita, né alcuna condizione in merito all'uso dei set di dati da parte dell'utente. Nella misura consentita dalle leggi locali, Microsoft declina ogni responsabilità per eventuali danni o perdite, inclusi danni diretti, consequenziali, speciali, indiretti, accidentali o punitivi, derivanti dall'uso dei set di dati da parte dell'utente.

Questo set di dati viene fornito in conformità con le condizioni originali in base alle quali Microsoft ha ricevuto i dati di origine. Il set di dati potrebbe includere dati provenienti da Microsoft.

Origine dati

Questo set di dati è un mirror di ftp://ussd-ftp.illumina.com/

Volumi di dati e frequenza di aggiornamento

Questo set di dati contiene all'incirca 2 GB di dati e viene aggiornato quotidianamente.

Posizione di archiviazione

Questo set di dati è archiviato nelle aree di Azure Stati Uniti occidentali 2 e Stati Uniti centro-occidentali. È consigliabile posizionare le risorse di calcolo negli Stati Uniti occidentali 2 o negli Stati Uniti centro-occidentali per affinità.

Accesso ai dati

Stati Uniti occidentali 2: 'https://datasetplatinumgenomes.blob.core.windows.net/dataset'

Stati Uniti centro-occidentali: 'https://datasetplatinumgenomes-secondary.blob.core.windows.net/dataset'

Token di firma di accesso condiviso: sv=2019-02-02&se=2050-01-01T08%3A00%3A00Z&si=prod&sr=c&sig=FFfZ0QaDcnEPQmWsshtpoYOjbzd4jtwIWeK%2Fc4i9MqM%3D

Condizioni per l'utilizzo

I dati sono disponibili senza restrizioni. Per altre informazioni e dettagli sulla citazione, vedere il sito ufficiale di Illumina.

Contatto

Per eventuali domande o feedback sul set di dati, contattare platinumgenomes@illumina.com.

Accesso ai dati

Azure Notebooks

Ottenere i genomi Platinum Illumina dai set di dati aperti di Azure ed eseguire l'analisi iniziale

Usare i notebook Jupyter, GATK e Picard per eseguire le operazioni seguenti:

  1. Annotare i genotipi usando VariantFiltration
  2. Selezionare varianti specifiche
  3. Filtrare le varianti pertinenti: nessuna chiamata O aree specifiche
  4. Eseguire l'analisi della concordanza
  5. Convertire i file VCF finali in una tabella

Dipendenze:

Questo notebook richiede le librerie seguenti:

  • Archiviazione di Azure pip install azure-storage-blob

  • numpy pip install numpy

  • Genome Analysis Toolkit (GATK) (Gli utenti devono scaricare GATK dalla pagina Web del Broad Institute nello stesso ambiente di calcolo di questo notebook: https://github.com/broadinstitute/gatk/releases)

Informazioni importanti: questo notebook usa il kernel Python 3.6

Recupero dei dati genomici dai set di dati aperti di Azure

Diversi dati genomici pubblici sono stati caricati come set di dati aperti di Azure qui. Viene creato un servizio BLOB collegato a questo set di dati aperto. Di seguito sono riportati esempi di procedure di chiamata ai dati dal set di dati aperti di Azure per i set di dati Illumina Platinum Genomes seguenti:

Scaricare il programma specifico "Illumina Platinum Genomes"

import os
import uuid
import sys
from azure.storage.blob import BlockBlobService, PublicAccess

blob_service_client = BlockBlobService(account_name='datasetplatinumgenomes', sas_token='sv=2019-02-02&se=2050-01-01T08%3A00%3A00Z&si=prod&sr=c&sig=FFfZ0QaDcnEPQmWsshtpoYOjbzd4jtwIWeK%2Fc4i9MqM%3D')     
blob_service_client.get_blob_to_path('dataset/2017-1.0/hg38/small_variants/NA12877', 'NA12877.vcf.gz', './NA12877.vcf.gz')

1. Annotare i genotipi usando VariantFiltration

Nota importante: controllare che GATK sia in esecuzione nel sistema.

Per filtrare i genotipi eterozigoti, si usa l'opzione --genotype-filter-expression isHet == 1 di VariantFiltration. Con l'opzione --genotype-filter-name è possibile specificare il valore di annotazione con cui lo strumento etichetterà i genotipi eterozigoti. Qui, il valore di questo parametro è impostato su isHetFilter. Nel nostro primo esempio, è stato usato NA12877.vcf.gz da Illimina Platinum Genomes, ma gli utenti possono usare qualsiasi file vcf da altri set di dati:Platinum Genomes

run gatk VariantFiltration -V NA12877.vcf.gz -O outputannot.vcf --genotype-filter-expression "isHet == 1" --genotype-filter-name "isHetFilter"

2. Selezionare varianti specifiche

Selezionare un subset di varianti da un file VCF. Questo strumento consente di selezionare un subset di varianti in base a vari criteri per facilitare determinate analisi. Esempi di tali analisi includono il confronto e la contrapposizione tra casi e controlli, l'estrazione di loci varianti o non varianti che soddisfano determinati requisiti o la risoluzione di risultati imprevisti, per citarne alcuni.

Sono disponibili molte opzioni diverse per selezionare subset di varianti da un set di chiamate più ampio:

Estrarre uno o più campioni da un set di chiamate in base al nome completo del campione o a una corrispondenza del criterio. Specificare i criteri di inclusione che collocano le soglie ai valori di annotazione, ad esempio "DP > 1000" (profondità di copertura superiore a 1000x), "AF < 0,25" (siti con frequenza allelica inferiore a 0,25). Questi criteri vengono scritti come "espressioni JEXL", documentate nell'articolo sull'uso delle espressioni JEXL. Fornire tracce di concordanza o discordanza per includere o escludere varianti presenti anche in altri set di chiamate specificati. Selezionare le varianti in base a criteri come il tipo (ad esempio, solo INDEL), l'evidenza di violazione mendeliana, lo stato di filtraggio, l'allelicità e così via. Sono disponibili anche diverse opzioni per registrare i valori originali di determinate annotazioni, che vengono ricalcolati quando si sottopone il nuovo set di chiamate, si tagliano gli alleli e così via.

Input: un set di chiamate di varianti in formato VCF da cui è possibile selezionare un subset.

Output: un nuovo file VCF contenente il subset di varianti selezionato.

run gatk SelectVariants -R Homo_sapiens_assembly38.fasta -V outputannot.vcf --select-type-to-include SNP --select-type-to-include INDEL -O selective.vcf

3. Trasformare i genotipi filtrati in nessuna chiamata

L'esecuzione di SelectVariants con --set-filtered-gt-to-nocall trasformerà ulteriormente i genotipi contrassegnati con una chiamata a genotipo Null.

Questa conversione è necessaria perché gli strumenti downstream non analizzano il campo filtro a livello di FORMAT.

Come è possibile filtrare le varianti con 'Nessuna chiamata'

run gatk SelectVariants -V outputannot.vcf --set-filtered-gt-to-nocall -O outputnocall.vcf

4. Controllare la concordanza del file VCF con Ground Truth

Valutare la concordanza a livello di sito di un VCF di input rispetto a un VCF truth. Questo strumento valuta due set di chiamate di varianti a confronto e produce una tabella delle metriche di riepilogo a sei colonne.

Questa funzione:

  1. Stratifica le chiamate SNP e INDEL
  2. Segnalare le chiamate vero-positive, falso-positive e falso-negative
  3. Calcola la sensibilità e la precisione

Lo strumento presuppone che tutti i record del VCF --truth siano varianti di truth di passaggio. Per il VCF -eval, lo strumento usa solo chiamate di passaggio non filtrate.

Facoltativamente, lo strumento può essere impostato per produrre VCF dei record di varianti seguenti, annotati con lo stato di concordanza di ogni variante:

Veri positivi e falsi negativi (ovvero tutte le varianti nel VCF truth): utile per calcolare la sensibilità

Veri positivi e falsi positivi (ovvero tutte le varianti nel VCF eval): utile per ottenere un training set per classificatori di artefatti di apprendimento automatico

Questi VCF di output possono essere passati a VariantsToTable per produrre un file TSV per l'analisi statistica in R o Python.

 run gatk Concordance -R Homo_sapiens_assembly38.fasta -eval outputannot.vcf --truth outputnocall.vcf  --summary summary.tsv 

5. VariantsToTable

Estrarre i campi da un file VCF in una tabella delimitata da tabulazioni. Questo strumento estrae i campi specificati per ogni variante in un file VCF in una tabella delimitata da tabulazioni, che può essere più facile da usare rispetto a un VCF. Per impostazione predefinita, lo strumento estrae solo le varianti PASS o (non filtrate) nel file VCF. Le varianti filtrate possono essere incluse nell'output aggiungendo il flag --show-filtered. Lo strumento può estrarre sia i campi INFO (ovvero a livello di sito) sia i campi FORMAT (ovvero a livello di campione).

Campi a livello di sito/INFO:

Usare l'argomento -F per estrarre i campi INFO; ogni campo occupa una singola colonna nel file di output. Il campo può essere qualsiasi colonna VCF standard (ad esempio, CHROM, ID, QUAL) o qualsiasi nome di annotazione nel campo INFO (ad esempio, AC, AF). Lo strumento supporta anche i campi seguenti:

EVENTLENGTH (lunghezza dell'evento) TRANSITION (1 per una transizione bi-allelica (SNP), 0 per una mutazione bi-allelica (SNP), -1 per INDEL e multi-allelici) HET (conteggio dei genotipi het) HOM-REF (conteggio dei genotipi omozigoti di riferimento) HOM-VAR (conteggio dei genotipi omozigoti della variante) NO-CALL (conteggio dei genotipi no-call) TYPE (tipo di variante, i valori possibili sono NO_VARIATION, SNP, MNP, INDEL, SYMBOLIC e MIXED VAR (conteggio dei genotipi non di riferimento) NSAMPLES (numero di campioni) NCALLED (numero di campioni chiamati) MULTI-ALLELIC (questa variante è multiallelica? vero/falso)

Campi FORMAT/a livello di campione:

Utilizzare l'argomento -GF per estrarre i campi FORMAT a livello di campione. Lo strumento creerà una nuova colonna per ogni campione con il nome "SAMPLE_NAME.FORMAT_FIELD_NAME", ad esempio NA12877.GQ, NA12878.GQ.

Input:

Un file VCF da convertire in una tabella

Output:

Un file delimitato da tabulazioni contenente i valori dei campi richiesti nel file VCF.

run gatk VariantsToTable -V NA12877.vcf.gz -F CHROM -F POS -F TYPE -F AC -F AD -F AF -GF DP -GF AD -O outputtable.table

Riferimenti

  1. VariantFiltration: https://gatk.broadinstitute.org/hc/en-us/articles/360036827111-VariantFiltration
  2. Selezionare Varianti:https://gatk.broadinstitute.org/hc/en-us/articles/360037052272-SelectVariants
  3. Concordanza: https://gatk.broadinstitute.org/hc/en-us/articles/360041851651-Concordance
  4. Varianti alla tabella: https://gatk.broadinstitute.org/hc/en-us/articles/360036882811-VariantsToTable
  5. Illumina Platinum Genomes:https://www.illumina.com/platinumgenomes.html

Passaggi successivi

Visualizzare il resto dei set di dati nel catalogo dei set di dati aperti di Azure.