Ciao! Come stai? Spero bene. Ho deciso di deliziarti con un nuovo articolo che andrà direttamente nella rubrica "File in bioinformatica", in cui parlo dei tipi di file più comuni e importanti utilizzati dai bioinformatici. Infatti oggi parliamo del File SAM, or File della mappa di allineamento della sequenzae suo cugino File BAMFile di mappa di allineamento binario. Questi sono file estremamente utili in quanto prodotti dal processo di allineamento (o mappatura) delle reads su un genoma di riferimento, questo processo è anche chiamato ri-sequenziamento, anche se a mio parere questo termine è un po 'fuorviante. In ogni caso, i file SAM e BAM sono ugualmente utili per identificare i polimorfismi che esistono tra un genoma sequenziato e un genoma di riferimento oltre che con un terzo genoma anch'esso allineato sullo stesso riferimento, o anche un quarto, un quinto e così via. Insomma, questi file sono indispensabili per ottenere la cosiddetta “chiamata” delle varianti esistenti tra i genomi confrontati.

Ma andiamo con ordine. I file SAM sono i primi prodotti del processo di allineamento, mentre il BAM è derivato, infatti questo contiene le stesse informazioni di allineamento presenti all'interno di un file SAM ma semplicemente in modo compresso è più accessibile ai programmi utilizzati per il richiamo delle varianti oppure per la semplice visualizzazione grafica della mappatura delle letture sul riferimento.

Quindi, per essere il più chiaro possibile, ho pensato di presentare schematicamente questi due tipi di file.

Il file SAM

  • Tipo di file: File di testo in cui vengono riportate le informazioni sull'allineamento ASCII caratteri.
  • Estensione del file: nome_del_file.sam
  • Struttura del file: Il file SAM è costituito da due parti principali:
    1. I header, che inizia con il simbolo "@". Questa contiene una serie di informazioni, come le informazioni generiche relative al file e alla sua versione, quelle relative all'ordinamento del file e quelle relative al genoma di riferimento.
    2. Il corpo o la sezione dell'allineamento, in cui tutti i dati prodotti dal processo di allineamento ottenuti da software specifici, come BWA, sono immagazzinati. Questo consiste in un numero di Linee uguale al numero di reads prodotte dalla sequenza (una riga per ciascuna read) e undici colonne, dove in ognuna di queste troviamo un campo che contiene informazioni specifiche relative alla mappatura delle reads sul riferimento.

Vediamo cosa dicono in dettaglio le singole colonne.

Col 1, QNAME: Indica il nome della read. Attenzione però, in alcuni casi una read può essere chimerica e quindi capace di allinearsi in diversi punti del genoma di riferimento quindi potremmo osservare ripetizioni del nome lungo la colonna 1.

Col 2, FLAG: Indica un codice numerico che ci dice come la read osservata nella presente riga è stata allineata dal software di allineamento sul genoma di riferimento. Questa colonna è essenziale per ottenere in seguito, utilizzando un software appropriato come samtools flagstat, statistiche sulla qualità dell'allineamento. Facciamo un esempio per capire come questi numeri posti nella seconda colonna ci diano informazioni importanti. Supponiamo che la read in esame abbia un valore FLAG uguale a 4. Cosa significa? Ebbene, tramite un'apposita tabella (presente nell'immagine sotto) sappiamo che questo valore indica che la suddetta read non è stata mappata in quanto non è stato trovato alcun punto sul genoma con cui allinearsi. Molto interessante vero? Pensa che dal punto di vista dello studio delle varianti strutturali queste reads non mappate sono molto utili, infatti sono proprio queste che solitamente contengono il maggior numero di polimorfismi rispetto al genoma di riferimento, che appunto ne impediscono l'allineamento.

Fonte: https://bioinformatics.uconn.edu/resources-and-events/tutorials-2/file-formats-tutorial/#fileformats_bam

Col 3, RNAME: Indica il nome del genoma di riferimento su cui sono state allineate le reads dall'allineatore. A tal proposito è necessario specificare che, solitamente, in questo campo è presente il nome del cromosoma di riferimento su cui è allineata una read.

Col 4, POS: Indica la posizione iniziale di allineamento della read considerata sul genoma di riferimento. Questa posizione è espressa con un numero che indica la posizione del primo nucleotide da cui parte l'allineamento. Se in questa colonna troviamo il valore zero significa che la read considerata non è stata mappata a conferma del valore 4 posto nella colonna FLAG (col 2).

Col 5, MAPQ: Indica il valore di qualità dell'allineamento (leggi qui per saperne di più su questo parametro).

Col 6, CIGAR: In questa colonna troviamo una stringa composta da un numero intero e una lettera, che fa riferimento ad un'operazione (OP), che insieme riassumono le informazioni relative all'allineamento. Questo è molto utile in quanto consente programmi come TABLET, di visualizzare graficamente l'allineamento delle reads sul genoma di riferimento. Di seguito puoi trovare una tabella che descrive il significato di ciascuna lettera che possiamo trovare nella stringa. Facciamo un esempio, supponiamo di avere una stringa come questa nella colonna 6: 76H130M. Ciò significa che 130 basi della read in esame sono state allineate al riferimento mentre le 76 basi rimanenti non sono state allineate.

Col 7, PROSSIMO: Indica il nome della read che è in paired-end con la read in esame. Attenzione, il simbolo "*" indica che non ci sono informazioni disponibili mentre il simbolo “=” indica che la read in paired ha lo stesso ID (nome) della read di quella riga.

Col 8, PNEXT: Indica la posizione di inizio della read che è paired-end con la read in esame.

Col 9, TLEN: Rappresenta la lunghezza del segmento di riferimento mappato dalle due reads paired-end.

Col 10, SEQ: Mostra la sequenza della lettura presa in considerazione.

Col 11, QUAL o PHRED: Esprime il valore di qualità relativo alla sequenza della lettura, cioè esprime la probabilità di avere un errore quando si fa la "chiamata" delle basi durante il sequenziamento.

Ciò che ho descritto finora può essere riassunto con queste due immagini:

Il file BAM

Una volta presentato il file SAM, comprendere il ruolo del file BAM è molto più semplice, quindi non mi dilungherò a schematizzarlo come fatto sopra. Per semplicità potremmo dire che un file SAM è comprensibile per noi umani mentre il file BAM è comprensibile solo al computer ma entrambi contengono informazioni sull'allineamento delle reads sul genoma di riferimento. Il file BAM è facilmente leggibile dal computer così com'è indicizzabili (utilizzando samtools index), ovvero è possibile creare un indice di questo in modo da rendere più facile l'utilizzo del file da parte di diversi programmi, compresi i programmi che hanno il compito di trovare i polimorfismi presenti tra i genomi allineati al riferimento e quest'ultimo ed i programmi dedicati alla costruzione di rappresentazioni grafiche dell'allineamento delle reads sul genoma di riferimento.

Va bene, forse anche oggi mi sono dilungato un po 'troppo, ma spero che con questo articolo ora abbiate in mente anche il ruolo di questi altri due formati di file estremamente utili nel campo della bioinformatica. Come sempre vi invito a iscrivervi al blog, a lasciare un like e / oa lasciare un commento anche per fare una critica costruttiva. Inoltre ti ricordo che se ti interessa questo progetto di divulgazione puoi sostenerci attraverso una (anche piccolissima) donazione su PayPal nell'apposita sezione "Aiutaci a crescere ".

Ciao e a presto.

Fonte: