WBO 12 – Mapowanie odczytów NGS

Dziś mamy zajęcia o mapowaniu odczytów. Wykład tutaj: wyk12-ngs

Zadania na dziś dotyczą głównie indeksów sekwencji:

1. Napisz funkcję compute BWT(txt), która oblicza BWT (w postaci napisu) dla zadanej sekwencji DNA oraz tablice C(x) i OCC(i,x)

2. Wylicz te wartośći dla sekwencji:
CGAGCCGCTTTCCATATCTATTAACGCATAAAAAACTCTGCTGGCATTCACAAATGCGCAGGGGTAAAACGTTTCCTGTAGCACCGTGAGTTATACTTTGT

3. Korzystając z metody podanej na wykładzie wyszukaj wystąpień napisu AAAC w podanej sekwencji

4. Korzystając z podanej metody omijania błędów znajdź sekwencję (z co najwyżej jednym błędem) AAAACTCCGCTGGCATTCACAAAT

Zadanie domowe: Użyj stworzonego dziś kodu aby wyszukać wszystkich promotorów z pliku ecoli_proms.fa w sekwencji genomu E. coli Escherichia_coli_str_k_12_substr_mg1655.ASM584v2.dna.chromosome.Chromosome.fa

WBO – Zadanie 2

Naszym zadaniem będzie analiza ewolucji białek z rodziny Homeodomain (HOX). W szczególności interesować nas będą białka pobrane z bazy homeoDB dla 4 gatunków: Człowieka, myszy, muszki owocowej i chrząszcza: homeo2.fa. Co istotne, w pliku Fa opis genu obejmuje: Gatunek|Nazwę genu|rodzinę genu|klasę genu

Podzielimy to zadanie na kilka podzadań:

  1. Korzystając z lokalnej instalacji narzędzia BLAST stwórz bazę danych sekwencji z pliku Fasta i następnie wylicz przybliżoną macierz podobieństwa poprzez wykorzystanie funkcji oceny BLAST. Dla genów niepodobnych wg blast, przyjmij ustaloną niską wartość podobieństwa. (3 pkt)
  2. Korzystając z metody Neighbor joining skonstruuj drzewo genów dla tej rodziny.  (2 pkt)
  3. Zakładając, że człowiek z myszą i muszka z chrząszczem są najbliżej spokrewnionymi gatunkami spośród 4 danych dokonaj uzgodnienia otrzymanego drzewa genów z drzewem gatunków, tj. znajdź optymalny (w sensie duplikacji i strat) scenariusz ewolucyjny dla drzewa gatunków i Twojego  drzewa genów.   Czy możesz wybrać taki scenariusz optymalny, który jest zgodny z opisem genów w oryginalnym pliku (zakładamy, że geny z  różnych rodzin w tym samym gatunku to na pewno paralogi, a geny o tej samej nazwie u różnych gatunków to ortologi). (7 pkt)
  4. Wykorzystując narzędzie Hmmer dokonaj opisu domen białkowych dla klas genów hox (białka o tej samej ostatniej kolumnie w pliku fasta). Sprawdź, jak często białka należące do każdej z klas zawierają domeny należące do innej klasy. (4 pkt)
  5. Opisz swoje rozwiązanie (1 strona) i wyniki (max 2 strony) w krótkim raporcie w .pdf (4 pkty)

Wynik w postaci programu w pythonie i raportu w pdf wyślij na adres e-mail wykładowcy z dopiskiem [WBO-2-2018] do 22. czerwca 2018.

WBO 11 – Motywy sekwencyjne i ich wyszukiwanie

Dziś rozmawialiśmy o reprezentacji i wyszukiwaniu motywów sekwencyjnych: wyk11-motifs

Zadania na dziś:

1. Pobierz listę promotorów e_coli w pliku fasta: ecoli_proms.fa

2. Zapoznaj się z modelem macierzy motywów z modułu Bio.motifs i jego dokumentacją 

3. Zaimplementuj prostą, zachłanną metodę consensus dla wyszukiwania motywów, zastosuj ją do promotorów e.coli i obejrzyj wyniki dla motywów długości 3,4,5,6. Schemat algorytmu jest następujący:

  • zaczynając od dowolnego miejsca w pierwszej sekwencji skonstruuj na jego podstawie model PWM
  • dla każdej kolejnej sekwencji wybieraj sekwencję najlepiej pasującą do obecnego modelu PWM
  • Po wybraniu sekwencji skonstuuj nowy model PWM, wzbogacony o tę sekwencję
  • Po wykonaniu tej procedury dla wszystkich punktów startowych z sekwencji 1. zwróć kilka (np. 5) najlepszych macierzy

Powtórz tę procedurę dla kilku różnych permutacji pliku wejściowego.

4. Porównaj wyniki ze znanymi motywami promotorowymi w E. coli

5. Wykonaj analizę tych samych promotorów przy pomocy MEME i porównaj wyniki z otrzymanymi z consensusa

WBO 10 – Uzgadnianie drzew

Dzisiaj na wykładzie zajmowaliśmy się uzgadnianiem drzew.

Slajdy do wykładu:

Zadania na lab:

Dzisiaj zajmiemy się uzgadnianiem drzew. Rozważmy sytuację, gdy mamy 1 drzewo gatunków S i drzewo genów G zgodne z tym drzewem gatunków (dla każdego genu g\in G , s(g)\in S). Na początek możesz

1. Napisz algorytm LCA(G,S), który znajduje mapowanie LCA i zwraca je w postaci słownika

2. Napisz funkcje liczące koszty DC(G,S), D(G,S) a następnie wykorzystaj wzór ze slajdu 10, który wylicza koszt L(G,S)

3. Napisz funkcję fat_tree(G,S), która tworzy scenariusz uzgadniający G i S (nie zawsze optymalny), gdzie w korzeniu występują wszystkie duplikacje, zaś wszystkie straty występują w krawędziach prowadzących do liści. Scenariusz w naszym przypadku, to etykietowanie drzewa gatunków zdarzeniami ewolucyjnymi, D i L. Zauważmy, że zarówno straty jak i duplikacje występują na krawędziach drzewa gatunków.

4. Napisz funkcję optimal_tree(G,S), która znajduje jeden z optymalnych scenariuszy uzgadniających G i S. W tym celu musimy przenieść w drzewie “grubym” duplikacje w dół, a straty w górę, jeśli to możliwe.

5. sprawdź na przykładzie drzewa z wykładu (abcde), czy Twój algorytm działa poprawnie

WBO 9 – Homologi i funkcje genów

Slajdy z dzisiejszego wykładu są tu: WBO9

Zadania na dziś:

1. Zapoznaj się z testem Fishera  (np w pakiecie scipy fisher_exact) i metodą GSEA zaimplementowaną w Istytucie Broad’a 

2. Zapoznaj się z formatami plików OBO i GAF z projektu gene ontology: opis formatów, przykładowy plik GAF, przykładowy plik OBO

3. Napisz prosty program, który testuje testem Fishera, wraz z poprawką Bonferroniego wzbogacenie funkcji GO w zadanym zbiorze genów.

4. Przetestuj to na połączonym zbiorze histonów i homologów PAH

5 (*). Zaimplementuj uproszczoną metodę GSEA na podstawie danych z suplementu do pracy o GSEA 06580SuppText

 

Praca domowa:

Napisz funkcję Go_enrichment z zadania 3 poszerzoną o przypisanie genów do terminów nadrzędnych (na podstawie relacji is_a, part_of z pliku OBO)