Sayısal Haritalama Teknikleri

Herkese merhaba sitedeki ilk yazımla karşınızdayım. Bir yazılım mühendisi olarak doğayı ve canlı olan bütün organizmaları çok seviyorum. Biyoinformatik alanında ilgilenirken DNA’nın sayısal haritalama teknikleri kullanılarak sayısal işlemesininin yapıldığını farkettim. Denedim ve sizlerle paylaşmak istedim. DNA dizilimleri, sayısal haritalama teknikleri ile sayısal sinyallere nasıl dönüştürülür ? Bugünkü yazımızda bu sorumuzun cevabını MATLAB kullanarak gelin birlikte bulalım. Ama öncelikle DNA ne demektir buna bakalım.

DNA NEDİR ?

Tüm canlı organizmalar içlerinde genetik özelliklerinin olduğu nükleik asit bulundururlar.Ancak DNA en çok bilinen nükleik asit çeşitlerinden biridir. DNA’nın açılımı Deoksiribo nükleik asit’ dir. Yapısında 4 temel baz bulundurur. Bu bazlar iki tip olarak kategorize edilirler: adenin ve guanin pürin, sitozin ve timin pirimidin türevleridir.Bu bazlar birbirlerine hidojen bağı ile bağlanırlar. Örneğin Adenin ve Timin birbirlerine 2 hidrojen bağı ile, Guanin ve Sitozin ise 3 hidrojen bağı ile bağlanmıştır.

Sayısal Haritalama Teknikleri

Sayısal sinyal işleme tekniklerini sembolik sinyallere dönüştürülmesi imkansızdır. Bu yüzden DNA dizilimlerinin sayısal haritalama teknikleri kullanılarak sayısal sinyallere dönüştürülmesi gerekir.Peki ya Sayısal Haritalama Teknikleri nelerdir?

Sayısal Haritalama Teknikleri kendi içinde iki ayrı bölüme ayrılır. Bu teknikler sabit haritalama teknikleri ve fiziko-kimyasal özellik tabanlı haritalama teknikleridir.

Sayısal Haritalama Teknikleri Tablosu
Integer (TAMSAYI) Haritalama Tekniği

Integer Haritalama Tekniği’nde kullanılan iki farklı yöntem vardır. Bunlar:

Birinci yöntemde; bir DNA diziliminde bulunan bazlar arasında “pürin (A + G) > pürimidin (C + T) ” ilişkisi var ise, bu 4 baza sırasıyla ” T=0, C=1, A=2, G=3 ” sayısal değerleri verilir. İkinci yöntemde; DNA diziliminde bulunan bazlarda “Timin > Adenin” ve “Guanin > Sitozin” ilişkisi olması durumunda bazlara “A=0, C=1, T=2 ve G=3 ” değerleri verilir. Örneğin aşağıdaki S(n) adıyla verilen dna bazlarını bu yöntemi kullanarak sayısal işlemesini yapmaya çalışalım.

  S(n)=[ACCGTATAGG] örneği için çözümleme yapacak olursak: S(n)=[2 1 1 3 0 2 0 2 3 3] çıktısı alınır. Bu DNA diziliminde bulunan ilişki : pürin (A + G) > pürimidin (C+ T) ‘dir.Çünkü verdiğimiz örnek için birinci yöntem kullanılmıştır.Ama verdiğimiz örnek “Timin > Adenin” ve “Guanin > Sitozin” şartına uysaydı ikinci yöntem kullanılırdı. Matlab kullanarak Integer Haritalama Tekniği’nin kodlarının nasıl yazıldığına gelin birlikte bakalım.

clear all;close all;clc
DNAS='GGAGCGCGTGAGGCTCCGGCGCGCAAGCCCGGAGCAGCCCGCTGGGGCGCACAGGGTCGCGCGGGCGCGGGGATGGAGGACGGCGTGGCCGGTCCCCAGCTCGGGGCCGCGGCGGAGGCGGC';
 
sample_dna=DNAS; 
n=length(sample_dna);
numdna=[];
Adenin=0;
Guanin=0;
Sitozin=0;
Timin=0;
for i=1:n
    if sample_dna(i)=='A'
        Adenin = Adenin +1;
    end    
    
    if sample_dna(i)=='G'
        Guanin = Guanin +1;
    end
    
    if sample_dna(i)=='C'
        Sitozin = Sitozin +1;
    end
    
    if sample_dna(i)=='T'
       Timin = Timin +1;
    end
    
end
if (Adenin+Guanin) > (Sitozin+Timin)
    for i=1:n
        if sample_dna(i)=='A' 
           numdna(i)=2;
        end
        if sample_dna(i)=='C' 
           numdna(i)=1;
        end
        if sample_dna(i)=='G' 
           numdna(i)=3;
        end
        if sample_dna(i)=='T' 
          numdna(i)=0;
        end
    end
end
if (Timin>Adenin) && (Guanin>Sitozin)
    for i=1:n
        if sample_dna(i)=='A' 
           numdna(i)=0;
        end
        if sample_dna(i)=='C' 
           numdna(i)=1;
        end
        if sample_dna(i)=='G' 
           numdna(i)=3;
        end
        if sample_dna(i)=='T' 
          numdna(i)=2;
        end

    end
end
numdna
Kodun Açıklaması:

Gelin birlikte yazdığımız kodu anlamaya çalışalım.

Öncelikle dışarıdan bir DNA girişinin olması gerekiyor.Ancak bu giriş kullanacağımız veriye göre değişiklik gösterecektir. Bizim örneğimizde bulunan “DNAS” girişini biz oluşturduk.Ama isterseniz siz başka DNA baz değerleride giriş olarak alabilirsiniz. DNAS ‘ı sample_dna adlı değişkenimize ve sample_dna‘ nın uzunluğunu ‘n’ değerine atadık. Numdna adında bir dizi tanımladık. Adenin Guanin Sitozin ve Timin bazlarımıza başlangıç değerleri olarak 0 sayısını verdik. Bir döngü başlatarak i=1’den n kadar dönmesini sağladık. Döngünün içinde sample_dna da bulunan A,G,T ve C değerlerinin kaç tane olduğunu bulduk. (Adenin + Guanin) değerinin (Sitozin +Timin) değerinden büyük olup olmadığını kontrol ettik.Eğer büyükse for döngüsü içinde numdna‘nın içine ” T=0, C=1, A=2, G=3 ” değerlerini atadık. Fakat bu şarta uymamış ise Timin> Adenin ve Guanin >Sitozin değerlerini if koşuluyla kontrol ettik. Şartı sağlıyorsa for döngüsü içinde “A=0, C=1, T=2 ve G=3 ” değerlerini numdna‘nın indislerine atadık. Son olarakta numdna dizimizi bastırdık.

Sonuç olarak kodlarımızın anlatımı bu şekildedir. Ama anlamadığınız bir kısım olursa buradan bana ulaşabilirsiniz. Fakat bu yazımızda bütün sayısal haritalama tekniklerinin detaylı anlatımını yapmadık. Konunun sizde tam anlamıyla oturması için adım adım gidiyoruz. Bu yüzden hepsini size zamanla anlatacağım. Sayısal Haritalama teknikleri başlığı altındaki Sabit Haritalama Tekniklerinin ikincisi Reel Haritalama Tekniği yazımızı yakında yayınlayacağız. Sağlıklı günler dilerim ♥

3 thoughts on “Sayısal Haritalama Teknikleri

Yorumlar kapatıldı.