Bioinformatyka Ocena wiarygodności dopasowania sekwencji www.michalbereta.pl Załóżmy, że mamy dwie sekwencje, które chcemy dopasować i dodatkowo ocenić wiarygodność tego dopasowania. Interesujące nas pytanie brzmi: na ile jest prawdopodobne, by podobny wynik otrzymać dla dwóch losowych sekwencji o podobnej zawartości, tzn. takich, w których procentowa zawartość znaków jest taka sama. W tym celu wykorzystamy pakiet programów fasta. Ze strony http://faculty.virginia.edu/wrpearson/fasta/fasta36/ pobierz plik fasta-36.3.6f.zip a następnie rozpakuj go. http://faculty.virginia.edu/wrpearson/fasta/fasta36/fasta-36.3.6f.zip www.michalbereta.pl/fasta-36.3.6f.zip 1
W pakiecie tym w katalogu bin znajdują się implementacje wielu algorytmów. Nas interesuje program ssearch36.exe, w którym zaimplementowano algorytm Smitha-Watermana. Jest to program bez interfejsu graficznego, musimy go zatem uruchomić z linii poleceń. W katalogu doc znaleźć można plik fasta_guide.pdf. 2
Program uruchamia się bezpośrednio z linii poleceń. Po jego nazwie następuje lista parametrów potrzebnych do wykonania zamierzonych obliczeń, przede wszystkim plik z sekwencją stanowiącą zapytanie (query.file), oraz plik z sekwencjami stanowiącymi naszą lokalną bazę danych sekwencji (libr ary.file). Dodatkowo, do programu przesłać można szereg parametrów, z których najważniejsze przedstawiono poniżej. 3
Z powyższego wynika, że programów z tego pakietu możemy używać jeśli mamy znaczną liczbę sekwencji lokalnie na naszym komputerze i chcemy ją przeszukać na podstawie interesującej nas sekwencji. Algorytm Smitha-Watermana nie jest najszybszym algorytmem, który możemy użyć w tym celu, jednak to właśnie on zostanie przez nas wykorzystany tym razem. Rozważymy trzy przypadki: 1. Jedna sekwencja stanowiąca zapytanie oraz plik z bazą sekwencji o znacznej liczbie (więcej niż 500) 2. Jedna sekwencja stanowiąca zapytanie oraz plik z bazą sekwencji o niewielkiej liczbie (mniej niż 500) 3. Dwie sekwencje, które chcemy ze sobą porównać i otrzymać dodatkowo oszacowanie statystyczne jakości tego dopasowania. Celem analizy jest wnioskowanie o homologii dopasowanych sekwencji. 4
1. Jedna sekwencja stanowiąca zapytanie oraz plik z bazą sekwencji o znacznej liczbie (więcej niż 500) Ze strony ftp://ftp.ebi.ac.uk/pub/databases/embl/release/std pobierz plik rel_est_mam_10_r123.dat.gz z fragmentem bazy EMBL (wybieramy go z powodu stosunkowo niewielkich rozmiarów). www.michalbereta.pl/rel_est_mam_10_r123.zip Rozpakuj pobrane archiwum. Jego zawartość to wiele rekordów w znanym nam formacie. Dla ułatwienia, wyszukiwać w tym pliku będziemy sekwencję pierwszego rekordu z tego pliku (numer dostępu AC JK123687), lekko zmodyfikowaną. 5
Po małych modyfikacjach, szukana sekwencja jest następująca: Gggagctgcgtctggagctcggctgttggctggagtgggcgcttatctggtgtggggaaggcggcgggactcaggcctagcattgtcctacataa tggtagaggatgaactggcactgttcgataaaagcataaatgaattttgattcaaaagtacggacacctcctgtcaaatggcgggaataagacta agagatacctacaaggactccatcaaagcatttgcagaaaagctgtctgtgaaattaaaggaagaagaacgaatggttgagatgtttctggaat atcaaaatcagatcaggaggcaaaataagctcattcaagaaaaaaaggataacttgttaaaattgattgctgaagtaaaaggcaaaaagcagg aattggaagtactgactgcaaatatccaggatcttaaggaagaatattctaggaagaaggaaactatttctactgctaataaagcgaatgcaga gaggttgaaaaggctgcagaaatctgcagacttgtataaagatcgacttggactagaaattcgaaaaatttatggtgagaaattgcagtttatatt cactaatattgaccctaagaatcctgagagcccatttatgttttccctgcatctaaatgaagcaagggactatgaagtgtcagatagtgcccctcat cttga Zapisz ją do pliku z rozszerzeniem fasta, np. sekwencja_1.fasta. Dla ułatwienia, załóżmy, że wszystkie potrzebne nam pliki są w katalogu C:\bioinf 6
Aby uruchomić linię poleceń, kliknij w menu główne (dolny lewy róg) a następnie wybierz uruchom. Wpisz cmd. Należy przejść do swojego katalogu roboczego za pomocą polecenia cd C:\bioinf. Możemy teraz wydać polecenie ssearch36.exe sekwencja_1.fasta rel_est_mam_10_r123.dat > output.txt 7
W katalogu bioinf pojawi się plik output.txt. Okazuje się jednak, że program nie znalazł żadnej sekwencji w naszym pliku z bazą. Dzieje się tak dlatego, że domyślnie program oczekuje plików w formacie fasta. Jeśli pliki są w innym formacie, należy wskazać za pomocą odpowiedniego parametru, jaki to format. 8
Z pliku fasta_guide.pdf: Zatem w naszym przypadku poprawne polecenie to: Tym razem proces przeszukiwania bazy może potrwać kilka minut. Po jego zakończeniu, w pliku output.txt znajdziemy raport. 9
Raport ten zawiera kilka części. Poniżej zaznaczono nagłówek, zawierający informację o programie i jego wersji. 10
Następnie zaznaczono podsumowanie sekwencji z zapytania oraz pliku z bazą sekwencji. Możemy odczytać, że nasza baza zawiera 17490 sekwencji. 11
Poniżej zaznaczono fragment z podsumowaniem parametrów (np. gap open / extend), czasem skanowania oraz oszacowanymi parametrami statystycznymi, które wynikają z przyjętego modelu probabilistycznego. 12
W dalszej części raportu zestawiono najlepsze wyniki przeszukiwania. Zwróć uwagę, że rzeczywiście rekord o numerze dostępu JK123687 został odnaleziony jako najlepiej pasujący. Dostępne są wartości E-value, podobnie jak miało to miejsce podczas wyszukiwania na stronie internetowej EBI. Wartość nawiasie E(17490) oznacza, że parametry modelu oszacowane zostały na podstawie zawartości bazy, czyli 17490 sekwencji. Warto podkreślić, że wyniki zależą od sekwencji w bazie ale również od samej ich liczby. Jeśli rozmiar bazy się zmieni, zmienią się wartości w kolumnie E. Jeśli rozmiar bazy wzrośnie, wartości E wzrosną by odzwierciedlić fakt, że im więcej w bazie sekwencji, tym bardziej zwiększa się szansa na losowe uzyskanie dobrego dopasowania. W ostatniej części prześledzić możemy wyniki dopasowania najlepszych sekwencji. 13
Przeszukiwać możemy również bazę sekwencji aminokwasów. Można również doprecyzować wartości parametrów algorytmu takich jak kara za przerwy czy macierz punktacji. Przykładowo, pobierzmy fragment bazy sekwencji białkowych Uniprot. www.michalbereta.pl/uniprot_sprot_viruses.zip ftp://ftp.ebi.ac.uk/pub/databases/uniprot/current_release/knowledgebase/taxonomic_divisions/ Pobierz plik dotyczący wirusów. Wyszukiwać będziemy sekwencję: MAFSAEDVLKEYDRRRRMEALLLSLYYPNDRKLLDYKEWSPPRVQVECPKAPVEWNNPPS EKGLIVGHFSGIKYKGEKAQASEVDVNKMCCWVSKFKDAMRRYQGIQTCKIPGKVLSDLD AKIKAYNLTVEGVEGFVRYSRVTKQHVAAFLKELRHSKQYENVNLIHYILTDKRVDIQHL EKDLVKDFKALVESAHRMRQGHMINVKYILYQLLKKHGHGPDGPDILTVKTGSKGVLYDD SFRKIYTDLGWKFTPL Umieść ją w pliku sekwencja_2.fasta 14
W katalogu C:\bioinf powinny się teraz znajdować następujące pliki: Wykonajmy polecenie przeszukania pliku z bazą sekwencji, używając macierzy Blosum62, kary za przerwy gap open=-10 oraz gap extend=-1. Zawartość pliku z raportem: 15
Sekwencja z zapytania najlepiej pasuje do rekordu o ID 001R_FRG3G w pliku uniprot_sprot_viruses.dat. Jest to pierwszy w kolejności rekord w tym pliku. 16
2. Jedna sekwencja stanowiąca zapytanie oraz plik z bazą sekwencji o niewielkiej liczbie (mniej niż 500) Jeśli nasza baza zawiera mniej niż 500 sekwencji, oszacowanie parametrów modelu na podstawie zawartości bazy nie będzie wiarygodne. W takich przypadkach stasuje się metodę polegającą na generowaniu losowych sekwencji na podstawie istniejących w bazie. Takie losowo wygenerowane sekwencje są dopasowywane do sekwencji z zapytania w celu sprawdzenia na jaką jakość dopasowania możemy liczyć w wyniku losowych zdarzeń. 17
Wykorzystajmy plik CytBDNA.txt jako bazę. Wyszukiwać będziemy sekwencję Lungfish Protopterus dolloi. Skopiuj ją do osobnego pliku fasta o nazwie sekwencja_3.fasta. Zawartość katalogu roboczego: Wykonaj polecenie: W raporcie przedstawionym poniżej zwróć uwagę, że na podstawie 20 sekwencji z bazy wykonano 500 przetasowań w celu uzyskania 500 losowych sekwencji. 18
Losowego przetasowania sekwencji można wykonać na parę sposobów. Wyborem konkretnego podejście steruje parametr z. 19
Przykładowo: 20
3. Dwie sekwencje, które chcemy ze sobą porównać i otrzymać dodatkowo oszacowanie statystyczne jakości tego dopasowania. Z pliku CytBProt.txt wybierz dwie pierwsze sekwencje i zapisz każdą w osobnym pliku. sekwencja_4.fasta sekwencja_5.fasta Zawartość katalogu roboczego: Wykonaj polecenie: W raporcie zobaczymy, że otrzymaliśmy nie tylko dopasowanie, ale również wartość E oszacowaną na podstawie losowych przetasowań sekwencji. Wartość E jest bliska 0 co oznacza wiarygodne dopasowanie i umożliwia wnioskowanie o homologii. 21
Dla porównania, wygeneruj losową sekwencję: Umieść ją w pliku sekwencja_6.fasta. 22
Wykonaj polecenie: W raporcie możemy sprawdzić, że w tym przypadku wartość E zdecydowanie nie jest bliska 0. Dopasowanie zatem nie jest wiarygodne. 23