Relative Häufigkeit mit Matlab < Matlab < Mathe-Software < Mathe < Vorhilfe
|
Status: |
(Frage) beantwortet | Datum: | 14:29 Sa 13.05.2006 | Autor: | Wuppe |
Aufgabe | Ladet die Datei mitochondrion.dna in eine Zeichenkette mt und bestimmt die relative Häufigkeit an A, C, G und T in Variablen pA, ..., pT.
Hinweis: Mit mtA = (mt =='A') erhält man einen Vektor mit Einsen an den Stellen, wo in mt ein A steht und Nullen sonst. Wie groß ist der CG-Anteil, die relative Häufigkeit an C und G? |
Hallo!
Seit kurzem Programmieren wir in der Uni mit Matlab. Die oben stehende Aufgabe sollen wir als nächstes lösen.
Ich hab jetzt angefangen und erstmal die Datei mitochondrion.dna eingelesen, die ist jetzt mt.
Dann hab ich mtA = (mt=='A') eingegeben und eine langen Vektor mit vielen Nullen und ein paar Einsen bekommen.
Jetzt würd ich gerne sowas eingeben, wie:
pA = zähle die Einsen von mtA
Wie kann ich das tun?
Die relative Häufigkeit von C und G später ist doch dann pCG=pC+pG, oder?
Liebe Grüße,
Wuppe
Ich habe diese Frage in keinem Forum auf anderen Internetseiten gestellt.
|
|
|
|
Status: |
(Antwort) fertig | Datum: | 15:29 Sa 13.05.2006 | Autor: | dormant |
Hallo!
Wie soll man denn die relative Häufigkeit bestimmen? Die Anzahl der As in Mitochondiren.dat ist die absolute Häufigkeit. Die allereinfachste Vorgehensweise um sie zu relativisieren ist die Anzahl der As durch Anzahl aller Elemente von Mitochondrien.dat auszurechnen. Es kann sein, dass man von dir verlangt die relative Häufigkeit anhand einer anderen Formel zu bestimmen.
Angenommen man macht das Einfachste, das einem einfällt, nämlich die Anzahl der As durch die Anzahl aller Elemente zu teilen, würde ich Folgendes vorschlagen:
mtA=(mt=='A');
pA=sum(mtA)/length(mt);
Auf jeden Fall liefert sum(mtA) die Anzahl aller As in mt.
Gruß,
dormant
|
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 16:25 Sa 13.05.2006 | Autor: | Wuppe |
Vielen Dank für diese Lösung! Manchmal ist sie näher, als man denkt!
|
|
|
|