Hopp til innhald
Oppgåve

Slektskapsanalyse av ulike gnagarar

Sidan alle organismar har eit evolusjonært slektskap, antek vi at alle organismar har utvikla seg med utgangspunkt i eit felles arvestoff. Ved bruk av programmering skal du lære å samanlikne bestemte DNA-sekvensar for å avdekkje slektskap mellom ulike gnagarar.

Evolusjonært slektskap

Systematikk handlar om metodar for å plassere organismane på jorda i eit system basert på evolusjonært slektskap. Ved å gå ut frå at alle organismar er av felles avstamming, antek vi òg at alle organismar har utvikla seg med utgangspunkt i eit felles arvestoff. Gjennom tilfeldige mutasjonar og naturleg seleksjon har arvematerialet forandra seg over tid, og det er noko vi kan sjå att når vi studerer DNA frå ulike artar.

Samanlikning av DNA-sekvensar for å avdekkje slektskap

Ved å bruke molekylærbiologiske metodar basert på samanlikning av DNA-sekvensar kan vi avdekkje slektskap, og dermed gruppere organismar basert på likskapar i genmaterialet til artane. Jo fleire forskjellar i DNA-sekvensane som blir samanlikna, jo større evolusjonær avstand seier vi at det er mellom artane. Resultat frå slike slektskapsanalysar, som også blir kalla samanliknande sekvens-analysar, dannar vidare grunnlaget for inndelinga av artar i fylogenetiske tre.

I programmet vi skal skrive, skal du lære å leite etter bestemte DNA-sekvensar i eit arvemateriale og deretter gjennomføre ein slektskapsanalyse for å undersøkje slektskap mellom ulike gnagarar.

Last ned og lagre filer

Det første du må gjere, er å laste ned datafilene som ligg ved denne oppgåva. Filene inneheld eksempeldata og illustrerer baserekkjefølgja til heile arvestoffet for kvar av dei ulike organismane.

Filer

Søk etter ein bestemt DNA-sekvens

Tenk deg at du er interessert i basesekvensen til eit spesifikt gen i arvematerialet til ein organisme. Hos oss menneske inneheld arvestoffet cirka 20 000 gen. Hos gnagarar består det av cirka 25 000 gen. Når vi ønskjer å finne eit bestemt gen, må vi med andre ord søkje i eit stort datasett. Derfor må vi lage eit program som kan søkje etter ein bestemt DNA-sekvens for oss.

  1. Studer koden nedanfor, og prøv å forstå føremålet med dei ulike kommandoane.

  2. Søk etter genet som kodar for tyggjemuskelen musculus masseter, i arvematerialet hos ekorn. Baserekkjefølgja for genet er oppgitt i tekstboksen under.

Baserekkjefølgja for genet som kodar for tyggjemuskelen musculus masseter:

TTACCGTATCCAGCATCTCGATTT

DNA-sekvens
1resultat = []
2linjenummer = 0
3 
4SokDNA = input("Skriv inn DNA-sekvensen du ønskjer å søkje etter: ")
5with open("c:\Systematikk\ekorn.txt","r") as dna: # Pass på at 
6                       #filbana stemmer med plasseringa av fila.
7    for linje in dna:
8        linjenummer += 1
9        if SokDNA in linje:
10            resultat.append(linjenummer)
11    print("Sekvensen blei funnen på følgjande linje i fila: ",resultat)

Slektskapsanalyse av ulike gnagarar

Ved å samanlikne DNA-sekvensar frå to eller fleire artar kan vi avdekkje slektskap mellom artane. Samanlikn slektskap mellom dei tre gnagarane – marsvin, rotte og ekorn – ved å studere genet som kodar for tyggjemuskelen musculus masseter.

  1. Studer koden nedanfor, og prøv å forstå føremålet med dei ulike kommandoane.

  2. Gjennomfør ein samanliknande sekvens-analyse av dei tre gnagarane. Bruk genet som kodar for tyggjemuskelen musculus masseter, som utgangspunkt for analysen.

  3. Finst genet som kodar for tyggjemuskelen musculus masseter, hos alle dei tre gnagarane?
Søkje etter DNA-sekvens
1import os  
2 
3sok = input("Skriv inn DNA-sekvensen du ønskjer å søkje etter: ")
4 
5mappe = "c:/Systematikk/"
6for fil in os.listdir(mappe):
7    fo = open(mappe+fil)
8    linje = fo.readline()
9    linjenummer = 1
10    while linje != '':
11        posisjon = linje.find(sok)
12        if(posisjon != -1):
13            print("Funnen i", fil, linje)
14        linje = fo.readline()
15        linjenummer += 1
16    fo.close()

Tillate mutasjonar?

Kva skjer viss du søkjer etter nesten like DNA-sekvensar ved å tillate nokre basemutasjonar i søket ditt? Du vel sjølv kor mange basemutasjonar du skal tillate. Vil dette endre resultatet av søket?

Mutasjonar
1import os
2 
3sok = input("Skriv inn DNA-sekvensen du ønskjer å søkje etter: ")
4avvik = int(input("Skriv inn tal basemutasjonar du vil tillate: "))
5print("\n")
6 
7mappe = "c:/Systematikk/"
8for fil in os.listdir(mappe):
9    print("Funn i", fil)
10    funn = []
11    fo = open(mappe+fil)
12    linje = fo.readline()
13    linjenummer = 1
14    while linje != '':
15        base = list(linje)     #Gjer om linja til enkelt-teikn, 
16                        #slik at dei kan samanliknast enkeltvis.
17        del base[-1]           #Fjernar linjeskift-kommandoen \n, 
18               #som ligg skjult til slutt på kvar linje i TXT-fila.
19        score = 0
20        linjesok = "Linje "+str(linjenummer)+": "+sok
21        linjesok = list(linjesok)
22        for i in range(len(linjesok)):
23            if base[i] != linjesok [i]:
24                score += 1
25        if score <= avvik:  #Viss søket gir færre avvik enn dette 
26                    #talet, blir linja lagd til på lista over funn.
27            resultat = "Sekvens funnet i "
28            for i in range(len(base)):  #Listeelementa blir gjorde 
29                         #om til ein streng for å auke lesbarheita.
30                resultat = resultat+base[i]
31            funn.append(resultat)
32        linjenummer += 1
33        linje = fo.readline()
34    print (funn,"\n")
35    fo.close

Vidare arbeid med slektskapsanalysen

  • Analyser resultata frå den samanliknande sekvens-analysen. Kva fortel resultata deg?

  • Teikn eit fylogenetisk tre som viser slektskapen mellom dei tre gnagarane basert på den samanliknande sekvens-analysen du har gjennomført.

  • Genet du har studert, kodar for tyggjemuskelen musculus masseter. Finn ut kva slags føde dei ulike artane et. Kva seier dette om tilpassingane til artane?

  • Forklar samanhengen mellom genetikk, anatomi, fysiologisk tilpassing og biologisk mangfald.