




























































































Studia grazie alle numerose risorse presenti su Docsity
Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium
Prepara i tuoi esami
Studia grazie alle numerose risorse presenti su Docsity
Prepara i tuoi esami con i documenti condivisi da studenti come te su Docsity
Trova i documenti specifici per gli esami della tua università
Preparati con lezioni e prove svolte basate sui programmi universitari!
Rispondi a reali domande d’esame e scopri la tua preparazione
Riassumi i tuoi documenti, fagli domande, convertili in quiz e mappe concettuali
Studia con prove svolte, tesine e consigli utili
Togliti ogni dubbio leggendo le risposte alle domande fatte da altri studenti come te
Esplora i documenti più scaricati per gli argomenti di studio più popolari
Ottieni i punti per scaricare
Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium
Gli appunti presentano i seguenti argomenti di bioinformatica: banche dati, matrici, allineamenti a coppie, metodi di ricerca nei database, allineamenti multipli, pattern e profili, predizioni biochimiche-strutturali delle proteine, inferenza filogenetica, COG, GO, pathway, network, tool di arricchimento. E i seguenti argomenti di bioinformatica: drug discovery forward e reverse, chemofenomica, chemotrascrittomica, aptameri, PROTAC.
Tipologia: Appunti
1 / 161
Questa pagina non è visibile nell’anteprima
Non perderti parti importanti!





























































































La BIOINFORMATICA viene definita come lo studio dei problemi genomici attraverso le metodologie dell’informatica, e può quindi essere vista come l’unione della biologia molecolare e dell’informatica. La bioinformatica si sviluppa agli inizi degli anni ‘80 in concomitanza con lo sviluppo dei metodi di sequenziamento rapido degli acidi nucleici, e nasce dall’esigenza di gestire i dati biologici (per gestione si intende il mantenimento - ovvero la cura manuale da parte di personale esperto e il costante aggiornamento delle informazioni – l’organizzazione e la distribuzione) e di analizzare i dati biologici (ovvero inferire e fare predizioni sul significato biologico dei dati raccolti). La nascita della GENOMICA, disciplina che si occupa dello studio dei genomi completi degli organismi, è stata possibile proprio grazie all’unione di metodi bioinformatici a metodi di sequenziamento automatico. Ad oggi abbiamo a disposizione le sequenze complete di moltissimi organismi, e ci troviamo infatti nell’era POST- GENOMICA in cui dobbiamo essere in grado di interpretare i dati raccolti, gli aspetti più rilevanti in questa era sono:
Il dogma della bioinformatica è che sequenze amminoacidiche o nucleotidiche simili hanno spesso strutture simili e quindi di conseguenza funzioni simili. A partire da una sequenza biologica primaria è quindi possibile predirne la funzione. Gli “oggetti della bioinformatica” primari sono considerati sequenze di acidi nucleici o di proteine, strutture di macromolecole e fenotipi (ovvero le funzioni, che possono essere raggruppate in pathway, network o profili trascrittomici). Per ognuno di questi oggetti esistono banche dati dedicate in cui raccogliere le informazioni. Gli strumenti della bioinformatica sono quindi: BANCHE DATI: che raccolgono informazioni su acidi nucleici, proteine, strutture di macromolecole ecc… PROGRAMMI: le banche dati si interfacciano però con programmi che permettono di analizzare e visualizzare i dati presenti nelle banche dati. BANCHE DATI BIOLOGICHE Le banche dati sono definite come un insieme di dati strutturati, dove per strutturati si intende dati omogeni per contenuti e formato, memorizzati in un computer → rappresentano quindi la versione digitale di un archivio dati. Si deve però distinguere tra:
proteico diretto, ma ad oggi la quasi totalità delle sequenze proteiche sono ricavate dalla traduzione di sequenze codificanti di DNA. SwissProt presenta la particolarità di essere una banca dati manualmente annotata e verificata, infatti è costituita da un numero relativamente ridotto di entries (circa 560.823); mentre TrEMBL viene automaticamente annotata e non viene sottoposta a processo di review, infatti presenta un numero decisamente maggiore di entries (circa 171.501.488). TrEMBL deriva dalla traduzione automatica di sequenze depositate in EMBL → esistono infatti banche dati proteiche che derivano dalla traduzione automatica di sequenze depositate in banche dati nucleotidiche. Oltre a TrEMBL si ha anche GenPep che deriva dalla traduzione automatica di sequenze di DNA depositate in GenBank. Sia GenPep che TrEMBL sono annotate in modo molto meno accurato di SwissProt e Pir, ma sono banche dati più complete ed aggiornate. Tra le più importanti banche dati primarie di strutture molecolari troviamo invece PDB - Protein Data Bank. Strutture delle banche dati Le informazioni biologiche che vengono caricate nelle banche dati sono dette “ entry ”, ogni entry è identificata da un Entry name e da un Accession Number. Gli Accession Number sono identificativi univoci usati per identificare sequenze o altri records rilevanti inerenti a dati molecolari. Gli accession number si presentano come delle stringhe alfanumeriche, e la struttura del codice ci indica da quale banca dati proviene → Alcune banche dati sono più curate di altre, e quindi riconoscere da quale banca dati proviene l’informazione è importanti per darci una indicazione su quanto i dati del record siano affidabili. Per ogni entry oltre ad entry name ed accession number possiamo trovare associate informazioni aggiuntive che sono dette attributi o entità. Tutti questi elementi devono essere inseriti all’interno della banca dati in modo ordinato: Il database rappresenta una collezione di record, dove ogni record è costituito dalla entry e dalle informazioni aggiuntive associate alla entry. Le caratteristiche relative ad una entry sono descritte da fields (campi). Vediamo come esempio di struttura di banca dati NCBI: NCBI - National Center for Biotechnology Information (finanziato a sua volta da NIH) è un database che ospita e gestisce varie banche dati di sequenze nucleotidiche/genomiche (come GenBank), di sequenze proteiche, e banche dati di articoli scientifici (PubMed). Inoltre NCBI si occupa anche di sviluppare strumenti e software per analizzare i dati biologici presenti nei database → in particolare NCBI ha sviluppato BLAST, un algoritmo che permette di effettuare ricerche in banche dati per similitudine tra sequenze nucleotidiche o amminoacidiche.
Le banche dati sono quindi integrate all’interno di database di dimensione maggiore, come ad esempio NCBI, e sono collegate tra di loro: Una tipica entry di sequenza nucleotidica di GenBank si presenta come segue: Le sequenze amminoacidiche o nucleotidiche vengono sottomesse nella banca dati in formato FASTA. Il formato FASTA è un formato di testo in cui il nome della sequenza si trova tra due elementi: il simbolo “>” e “a capo”. Nelle righe successive viene riportata tutta la sequenza nel formato a singola lettera in cui ogni simbolo corrisponde ad un amminoacido o nucleotide. Questo è il formato base che permette ai programmi di riconoscere immediatamente le informazioni relative alle sequenze (nome e sequenza nucleotidica/amminoacidica), anche quando più sequenze sono introdotte nello stesso momento.
L’importanza delle banche dati non ridondanti e del database RefSeq Inizialmente le informazioni che venivano raccolte nelle banche dati erano informazioni derivanti dalla letteratura scientifica, e inserite manualmente da operatori esperti. Oggi le informazioni sono invece sottomesse direttamente dagli autori [ inoltre la sottomissione di sequenze/strutture di macromolecole nelle banche dati è condizione essenziale per pubblicare sulle principali riviste. I dati sono di solito secretati fino alla pubblicazione “entries hold until published” ]. Dato che l’autore ha controllo completo sui dati sottomessi significa che: solo l’autore può modificare l’informazione del proprio record e altri non possono correggere l’informazione presente anche se questa è chiaramente errata; e la possibilità di trovare informazioni dipende da quanto accuratamente è stata descritta dall’autore. Troviamo nella sezione CDS una traduzione della sequenza codificante
All’interno di RefSeq è anche visibile un genome brower che permette di navigare nel genoma e vedere cosa è presente a valle e a monte di un gene target d’interesse, mostra il senso di trascrizione del gene target e mostra inoltre tutti i possibili splicing alternativi del gene: Interrogazione delle banche dati E’ importante conoscere i sistemi tramite cui si può INTERROGARE una banca dati → interrogare una banca dati significa fare una ricerca testuale nella porzione “header” dei record, contenente le informazioni di testo sulla sequenza. Le banche dati si possono interrogare singolarmente; oppure è possibile fare ricerche incrociate in più banche dati sfruttando database come NCBI che attraverso il suo motore di ricerca Entrez permette di eseguire ricerche in più banche dati contemporantemante come ad esempio banche dati proteiche, banche dati nucleotidiche, banche dati di mutazioni (SNP), banche dati di letteratura scientifica (PubMed) ecc… Banche dati presenti all’interno
La ricerca può quindi avvenire: Tramite parole chiave o tramite accession number Per la ricerca tramite parola chiave è possibile sfruttare i boolean queries ovvero: AND, OR o NOT. Poniamo ad esempio di voler utilizzare le parole chiave “Pdcd1” e “cancer” per eseguire una ricerca in letteratura tramite la banca dati PubMed, i risultati ottenuti sfruttando i boolean queries sono i seguenti: Sfruttando i link e i filtri presenti sul database I link possono agire come filtri per rifinire la ricerca della sequenza d’interesse. Ad esempio si può eseguire una ricerca tramite la parola chiave “pdc1” su NCBI, e sfruttare il link “nucleotide” per essere reindirizzati direttamente alla banca dati nucleotidica. Si clicca su nucleotide per essere reindirizzati sulla banca dati
A partire da una entry nucleotidica è possibile arrivare su NCBI alla banca dati proteica semplicemente cliccando sul protein ID presente all’interno della CDS indicata nell’entry: Attraverso ricerca per similarità [ ciò è possibile su NCBI utilizzando BLAST ] E’ importante saper usare i sistemi per interrogare un database propriamente, perché ottenere esattamente l’informazione che si cerca nelle banche dati di sequenze è difficile, soprattutto a seguito dell’aumento della dimensione delle banche dati e soprattutto perché la maggior parte delle entry non sono curate manualmente → è l’autore che decide come descrivere le informazioni, e nelle maggior parte dei database non è presente un gruppo esperto che revisiona le entry per poi assegnare una nomenclatura standard e ciò diventa impattante per la ricerca. Vediamo ad esempio che geni codificanti per l’rRNA 16s possono avere nomenclature molto diverse tra loro: Risultato nella banca dati nucleotidica Risultato nella banca dati proteica
Partendo dal presupposto che genomi e geni hanno subito processi di evoluzione divergente, due sequenze si definiscono OMOLOGHE quando derivate da un ancestore comune (e quindi imparentate per evoluzione). Oggi però non si è in grado di stabilire quale sia stata esattamente l’evoluzione di una sequenza, il processo di evoluzione può solo essere dedotto sulla base di confronti tra sequenze. Nonostante il processo di evoluzione divergente abbia portato a mutazioni nelle sequenze, quando due sequenze sono evolutivamente vicine mantengono un certo grado di similarità → questo significa quindi che possono considerare due sequenze omologhe quando allineandole queste risultano simili in modo significativo. Bisogna prestare attenzione al fatto che i termini similarità e omologia hanno in realtà significati distinti: ➔ L’omologia è definibile come un carattere qualitativo , che fa riferimento a presenza/assenza di una relazione evolutiva, e non è quindi corretto parlare di “percentuale di omologia”. ➔ La similarità è invece espressa in termini quantitativi , fa infatti riferimento al grado di similitudine di sue sequenze che viene misurato durante un allineamento. Quindi la presenza di similarità (oltre un certo livello identificato come significativo) esprime una relazione di omologia tra due sequenze. Partendo da una sequenza ancestrale può avvenire un evento di separazione che porta a produrre due sequenze identiche. Nel tempo però le due sequenze che hanno subito l’evento di separazione possono accumulare in modo indipendente mutazioni [ ***** ] di diversa natura, che derivano da errori in fase replicativa del DNA che non vengono corretti dal sistema di riparazione. Ad oggi noi siamo unicamente in grado di osservare la presenza di similarità tra le sequenze allineate, ma non possiamo dedurre quali siano stati i processi evolutivi presenti a monte. Ciò implica che frammenti di DNA aventi la stessa funzione in organismi differenti, o funzioni correlate nello stesso organismo, non hanno esattamente la stessa sequenza in quanto sono avvenute delle sostituzioni puntiformi, delle delezioni e delle inserzioni. L’evento di separazione può essere di due diverse tipologie: o Evento di speciazione a seguito di questo evento si generano due specie diverse, durante il processo di evoluzioni possono essere introdotte mutazioni in modo indipendente nelle due sequenze che si trovano in organismi diversi. Le due sequenze omologhe in questo caso prendono il nome di ORTOLOGHE.
lettere, e un sistema di penalità per la presenza di gaps [ brevi interruzioni nell’allineamento tra le due sequenze ]. Il punteggio totale viene quindi calcolato come ∑ 𝑠𝑜𝑚𝑖𝑔𝑙𝑖𝑎𝑛𝑧𝑒 (𝑝𝑜𝑠𝑖𝑡𝑖𝑣𝑒 𝑒 𝑛𝑒𝑔𝑎𝑡𝑖𝑣𝑒) − ∑ 𝑝𝑒𝑛𝑎𝑙𝑖𝑡à. Date due sequenze ci sono diversi modi in cui queste possono essere sovrapposte (anche senza considerare l’introduzione di gap), semplicemente andando a slittare una sequenza rispetto all’altra → l’obbiettivo dell’allineamento è ottenere la sovrapposizione ottimale che è quella che presenta il punteggio totale più elevato, conservando l’ordine delle lettere e ammettendo l’introduzione di gaps. Tipicamente l’allineamento viene rappresentato graficamente come segue: in presenza di un match (appaiamento corrispondente tra due lettere) si pone una barra verticale tra le due lettere; in presenza di un mismatch (mancanza di appaiamento tra due lettere) si lascia uno spazio vuoto; mentre in presenza di un gap si pone una barra orizzontale. Un metodo rigoroso per rappresentare tutti i possibili appaiamenti tra due sequenze è rappresentato dalla DOT MATRIX , che è stata ideata nel 1970 da Gibbs e Fitch, e ancor oggi viene utilizzata per mostrare il risultato dell’allineamento tra due sequenze da alcuni software (come BLAST). La dot matrix è una matrice, ai cui margini sono poste le due sequenze che devono essere allineate: una sequenza è scritta da sinistra a destra in corrispondenza del margine superiore, l’altra dall’alto in basso in corrispondenza del margine sinistro. Ogni casella della matrice fa riferimento ad una lettera della prima sequenze e ad una lettera della seconda sequenza. La modalità più semplice per eseguire i confronti è quella in cui le due sequenze vengono fatte scorrere una sopra l’altra, spostandole di volta in volta di un singolo carattere, e confrontando lettera per lettera → se due lettere sono uguali la casella corrispondente alle due lettere viene colorata di nero/segnata con un punto (dot) o un asterisco. L’allineamento migliore è quello che forma una lunga diagonale visivamente distinguibile. _Vediamo un esempio con due sequenze fittizie:
probabilità molto più elevata. Questa elevata probabilità ci porta quindi ad avere delle dot matrix con un elevato “rumore di fondo” ( noise ) che non ci permette di vedere in modo chiaro la diagonale corrispondente all’allineamento ottimale. Per le sequenze nucleotidiche si deve quindi applicare un metodo di filtraggio che consiste nel non confrontare più lettera per lettera tra le due sequenze, ma confrontare una finestra (window) di caratteri di lunghezza variabile. Si fanno quindi sempre scorrere le due sequenze una sopra l’altra spostandole di un carattere alla volta, ma per ogni confronto si vanno a scontrare finestre di caratteri di W lunghezza. Si deve quindi stabilire una stringenza (stringency), ovvero quanti caratteri devono essere uguali tra loro all’interno di una finestra per poter dichiarare che c’è un match tra le due sequenze. Quando S=1 ci si trova in una situazione di tolleranza, mentre quando S = W si parla di stringenza massima. In genere si preferisce avere finestre di lunghezza dispari, questo perché quando si ha un match tra le finestre nelle due sequenze è possibile porre il dot in corrispondenza del carattere centrale della finestra → si parla di vantaggio del middle point. Possiamo notare la presenza del rumore di fondo, quando per il confronto si mantiene una finestra W=1, ed una stringenza S=1. Se invece utilizziamo una finestra W=4 e una stringenza S=3 otteniamo la seguente situazione:
Si sceglie quindi di utilizzare vie alternative all’allineamento esatto , che sono: Matrici Quando si deve eseguire un allineamento tra sequenze è importante stabilire dei criteri per assegnare punteggi positivi in caso di match tra due caratteri, punteggi negativi in caso di mismatch e penalità per l’apertura di gaps. Quando si vanno a valutare gli allineamenti si deve però tenere conto della tipologia di sequenza con cui si sta lavorando: ➔ Per le sequenze nucleotidiche si valuta unicamente l’ identità , e quindi si possono avere solo due casi: presenza di match o assenza di match. ➔ Per le sequenze amminoacidiche non si può unicamente valutare l’identità, ma si devono tenere in considerazione anche le proprietà chimico-fisiche degli amminoacidi che li rendono simili tra loro. Utilizzo di algoritmi basati sulla PROGRAMMAZIONE DINAMICA. Questa tipologia di algoritmi porta ad ottenere l'allineamento più preciso possibile. Esistono due diverse metodologie che utilizzano la programmazione dinamica:
Gli amminoacidi possono essere infatti raggruppati a seconda delle loro caratteristiche chimico-fisiche in diversi modi, ad esempio: Oppure ancora secondo questa classificazione: È quindi difficile stabilire dei criteri oggettivi per determinare le somiglianze fisico-chimiche degli amminoacidi perché non è possibile sapere a priori quali caratteristiche sono più importanti per il mantenimento della funzione delle proteine. Bisogna quindi stabilire un modello che sia in grado di quantificare la similarità tra coppie di amminoacidi, però si possono definire molti modelli diversi tra loro, ed è importante sapere che i risultati ottenuti poi dipenderanno esclusivamente dal modello che si è scelto di utilizzare. La prima matrice che si è pensato di utilizzare è stata la MATRICE DI SOSTITUZIONE , questo tipo di matrice è basato sull’osservazione di reali allineamenti tra sequenze proteiche, per essere così in grado di osservare con quale frequenza un amminoacido si trova mutato in un altro amminoacido all’interno delle sequenze proteiche → i valori di frequenza osservati sono infatti proporzionali alla probabilità che l’aai muti nell’aaj (ciò viene calcolato per tutte le coppie di aa possibili) e quindi la frequenza osservata viene sfruttata come misura di similarità tra coppie di amminoacidi. Tuttavia bisogna sempre tenere conto del fatto che il numero di differenze che sono osservate tra due sequenze non è per forza uguale alla distanza evolutiva presente tra le due sequenze, e questo perché:
Per il calcolo del punteggio di similarità però si preferisce non utilizzare direttamente la matrice di sostituzione, ma piuttosto utilizzare la corrispondente MATRICE DI PUNTEGGIO che è anche detta LOG-ODDS MATRIX. Ogni cella di una matrice di punteggio consiste in un “ odds ratio ” che viene poi convertito in logaritmo: log 𝑝𝑟𝑜𝑏𝑎𝑏𝑖𝑙𝑖𝑡à 𝑐ℎ𝑒 𝑢𝑛𝑎 𝑠𝑜𝑠𝑡𝑖𝑡𝑢𝑧𝑖𝑜𝑛𝑒 𝑠𝑖𝑎 𝑎𝑢𝑡𝑒𝑛𝑡𝑖𝑐𝑎 𝑝𝑟𝑜𝑏𝑎𝑏𝑖𝑙𝑖𝑡à 𝑐ℎ𝑒 𝑢𝑛𝑎 𝑠𝑜𝑠𝑡𝑖𝑡𝑢𝑧𝑖𝑜𝑛𝑒 𝑠𝑖𝑎 𝑑𝑜𝑣𝑢𝑡𝑎 𝑎𝑙 𝑐𝑎𝑠𝑜 codoni (es. leucina), mentre altri amminoacidi sono codificati da un singolo codone, la probabilità che si venga a formare sul DNA casualmente quello specifico codone è più basso e quindi la frequenza attesa nelle proteine di quell’amminoacido (es. metionina e triptofano) è più bassa. La frequenza attesa è diversa per ogni amminoacido, in blu sono indicati gli amminoacidi che sono codificati da 6 codoni, mentre in rosso gli amminoacidi che sono codificati da 1 solo codone. Non solo però la matrice di punteggio è preferita perché tiene conto delle frequenze osservate degli amminoacidi (o delle probabilità di avere una sostituzione random nel caso dei nucleotidi), ma anche perché dato che si utilizza il log-odds, si può sfruttare la probabilità dei logaritmi di sommare per calcolare i punteggi di similarità, mentre se si dovesse tenere conto delle probabilità saprebbe necessario moltiplicare tra loro le probabilità. È invece più facile l’interpretazione del logaritmo del rapporto:
Vediamo ad esempio una matrice Log-odds PAM250: Possiamo ad esempio notare dalla Log-odds PAM250 che l’amminoacido che presenta il punteggio più elevato quando un amminoacido non subisce sostituzioni è il triptofano, che presenta punteggio 17. Questo è dovuto al fatto che il triptofano è uno degli amminoacidi più rari, quindi se si trova presente all’interno di una sequenza proteica probabilmente svolge una funzione ben precisa. Un'altra matrice di sostituzione molto utilizzata è la matrice BLOSUM – BLOck SUbstitution Matrix , così chiamata in quanto questa matrice è stata derivata dall’osservazione di allineamenti locali e non globali (a differenza della precedente PAM). Più precisamente questa matrice è stata creata nel 1992 da Steven e Jorja Henikoff utilizzando per il database BLOCKS, un database secondario che presenta allineamenti (privi di gaps) di sequenze proteiche corrispondenti a regioni molto conservate in diverse famiglie proteiche. All’interno del database BLOCKS sono state contante le frequenze relative degli amminoacidi e le probabilità corrispondenti alla sostituzione di ogni coppia di amminoacidi. Sono quindi stati osservati direttamente gli allineamenti di blocchi conservati che presentassero: