Dziś zajmujemy się uliniawianiem par sekwencji – wyk3 (english version below)
Zadania na laboratorium:
- Zapoznaj się z modułem Bio.pairwise2 i klasą align oraz funkcją format_alignment() (kod źródłowy jest tutaj)
- Wczytaj sekwencje DNA histonów histones.fa i czynników bZIP bzips.fa do pamięci, najlepiej przy pomocy modułu Bio.SeqIO. Pliki są też dostępne na naszym serwerze jupyter w folderze WBO/.
- Dokonaj porównań pomiędzy sekwencjami DNA białek histonowych i bzip – dla każdej pary policz oceny dla najlepszych globalnych i lokalnych uliniowień z prostą macierzą substytucji (-1 za mismatch, 1 za match) i afiniczną funkcją kary za przerwy (np. -1.0 za otwarcie przerwy i -0.5 za jej rozszerzenie). Wylicz średnią ocenę w ramach grupy bzip, w ramach grupy histonów i pomiędzy grupami.
- Dokonaj tłumaczenia sekwencji DNA na białka(używając metody translate dla DNA), powtórz obliczenia używając macierzy substutucji BLOSUM60
Praca domowa (2pkt):
Napisz program, który wylicza optymalne lokalne uliniowienie dla sekwencji DNA dla różnych możliwych tłumaczeń na białka (tzn zakładając standardową tablicę kodonów oraz macierz substytucji BLOSUM60) przy uwzględnieniu trzech różnych ramek odczytu w obu sekwencjach. Dla uproszczenia załóżmy, że insercje i delecje powinny występować tylko “trójkami” nukleotydów. (Prace domowe jak zwykle przesyłamy do następnych zajęć mailem – proszę załączyć rozwiązanie jako pliki .py lub linki do działających notebooków, nie jako pliki .ipynb)
(*)Zastanów się, jakby wyglądał algorytm programowania dynamicznego w tym zadaniu gdybyśmy rozważali ogólną postać insercji i delecji, a nie tylko wielokrotności 3.
English version
Today we are concerned with pairwise sequence alignment – wyk3
Lab assignments:
- Take a look at the Bio.pairwise2 and the align class as well as the format_alignment() function (source code is here)
- Read in the sequences of histone histones.fa and bzip factor proteins bzips.fa from the files, using Bio.SeqIO module (we used previously).
- Make alignments between all the proteins both global and local (-1 for mismatch, 1 for a match) and affine gap penalty (i.e. -1.0 for gap opening and -0.5 for extending a gap). Copute average alignment scores within groups and between groups of proteins
- translate sequences into aminoacid alphabet, repeat comparisons with BLOSUM60 substitution matrix
Homework (2pts):
Write a program that computes local alignments of DNA sequences assuming the genetic code table (genetic code and BLOSUM60) considering all three possible reading frames. For simplicity, assume that insertions and deletions only occur in triplets.
(*)Think on how this would change if the insertions and deletions wouldn’t be limited to triplets.
In the homework, we consider stop codon as having infinitely negative score of substitution, so it shoud not appear in any solutions, but it can appear in the input sequences.