24 DNA ile çalışma
Öncelikle seqinr
paketini çalışma alanımıza yükleyelim:
Öncelikle şu bağlantıya sağ tıklayıp farklı kaydete basalım:
Veriyi okuyalım:
dna <- read.fasta(file = "data/example.fna")
24.1 Soru 1
Bu dosya içerisindeki birinci DNA dizisinin komplementer ipliğini, bir vektör olarak geri döndüren fonksiyonu yazınız:
tamamlayici <- function(dna){
# once bos bir vektor olusturalim
complementary <- c()
# DNA dizinin hepsini buyuk karaktere cevirelim
dna <- toupper(dna)
for ( baz in dna){
# her baz icin asagidaki kosullari test et
# eger kosul uygunsa, complementary vektorune uygun bazi ekle
if (baz == "A"){complementary <- c(complementary, "T")}
if (baz == "T"){complementary <- c(complementary, "A")}
if (baz == "G"){complementary <- c(complementary, "C")}
if (baz == "C"){complementary <- c(complementary, "G")}
}
return(complementary)
}
Şimdi fonksiyonu test edelim:
tamamlayici(dna[[1]])
[1] "T" "A" "C" "T" "C" "A" "G" "A" "G" "A" "G" "A" "C" "T" "A" "T" "T" "C"
[19] "C" "T" "G" "T" "T" "C" "C" "G" "A" "C" "G" "A" "C" "A" "C" "T" "T" "T"
[37] "C" "G" "G" "G" "A" "T" "A" "C" "C" "C" "G" "A" "T" "T" "C" "T" "A" "G"
[55] "T" "C" "G" "G" "G" "G" "T" "T" "T" "C" "G" "G" "C" "T" "A" "C" "T" "A"
[73] "T" "A" "G" "C" "C" "G" "C" "G" "A" "C" "T" "T" "C" "G" "A" "G" "A" "G"
[91] "C" "C" "G" "T" "C" "T" "T" "A" "C" "G" "A" "C" "T" "G" "G" "C" "A" "G"
[109] "A" "T" "G" "G" "G" "A" "G" "T" "C" "T" "G" "G" "T" "T" "C" "T" "G" "G"
[127] "A" "T" "G" "A" "A" "G" "C" "G" "A" "G" "T" "G" "A" "C" "C" "C" "T" "A"
[145] "C" "T" "G" "G" "A" "C" "T" "C" "G" "G" "G" "A" "C" "C" "C" "A" "G" "G"
[163] "C" "C" "A" "G" "G" "A" "C" "A" "C" "T" "T" "C" "T" "T" "C" "G" "T" "A"
[181] "C" "C" "G" "T" "T" "C" "C" "A" "A" "T" "A" "G" "T" "A" "C" "C" "C" "A"
[199] "C" "G" "T" "C" "A" "C" "C" "G" "G" "C" "T" "A" "C" "G" "G" "C" "A" "A"
[217] "A" "G" "T" "T" "T" "T" "T" "A" "T" "C" "T" "G" "C" "T" "G" "G" "A" "A"
[235] "C" "A" "C" "C" "C" "T" "C" "C" "A" "G" "A" "C" "C" "G" "G" "A" "G" "G"
[253] "G" "A" "C" "T" "C" "G" "C" "T" "T" "G" "A" "A" "G" "T" "A" "C" "G" "A"
[271] "A" "G" "G" "T" "T" "C" "G" "A" "C" "G" "C" "A" "C" "A" "A" "C" "T" "G"
[289] "G" "G" "C" "C" "G" "G" "T" "T" "G" "A" "A" "G" "T" "T" "C" "T" "A" "G"
[307] "G" "A" "G" "C" "G" "T" "G" "T" "G" "T" "T" "A" "C" "A" "G" "T" "A" "G"
[325] "C" "A" "C" "C" "A" "G" "T" "A" "G" "C" "C" "G" "T" "A" "C" "G" "A" "G"
[343] "A" "A" "G" "G" "G" "A" "C" "C" "T" "C" "T" "G" "A" "A" "G" "G" "G" "G"
[361] "G" "G" "T" "C" "T" "C" "C" "A" "A" "G" "T" "G" "T" "A" "C" "A" "G" "T"
[379] "C" "A" "A" "C" "T" "G" "T" "T" "C" "A" "A" "A" "A" "A" "G" "G" "T" "C"
[397] "T" "T" "G" "A" "A" "C" "C" "G" "A" "G" "A" "C" "C" "G" "A" "G" "A" "G"
[415] "A" "G" "A" "C" "T" "C" "T" "T" "C" "A" "T" "G" "G" "C" "G" "A" "T" "T"
24.2 Soru 2: G+C oranı bulma
Bir DNA dizisindeki G + C nükleotidi oranını aşağıdaki şekilde bulabilirsiniz:
\[ GC = \frac{G+C}{A+G+C+T} \] Yüklediğimiz fasta dosyasında, birinci DNA dizinin GC oranını bulan fonksiyonu yazınız.
24.3 Soru 3: Amino asit birincil ipliği oluşturma
Şu dosyaya sağ tıklayıp farklı kaydete basınız.
Bu dosyada DNA kodon tablosu bulunmaktadır. Bu dosyayı kullanarak fasta dosyasında bulunan birinci DNA dizisini bir amino asit vektörü olarak geri döndüren fonksiyonu yazınız.