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:

Örnek DNA verisi

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.