Ich versuche die Anzahl einer kleinen DNA-Sequenz (R) zu suchen und zu zählen, die innerhalb einer größeren Sequenz (F) auftritt, aber R hat ein paar Zeichen, die sein könnten Variable. Der einfachste Weg, dies zu tun, wäre, ein Verhältnis für R zu setzen und alle Treffer über 80% in F zu zählen, aber die einzigen Befehle, die dies zu tun scheinen (zB sequenzMatcher oder get_close_matches von difflib), müssen funktionieren. Ich kann F in solche Listen nicht brechen. Irgendwelche Ideen?Zählvorkommen einer Fuzzy-Sequenz innerhalb einer größeren DNA-Sequenz
EDIT 2: Weitere Informationen wie angefordert.
Eine festgelegte Anzahl von Wiederholungen (R) existiert in einem DNA-Fragment (F). F ist 353 Zeichen lang und eine einzelne Wiederholung ist 15 Zeichen lang. Es sollten keine Überlappungen auftreten, da R deutlich genug ist, um sich nicht zu überlappen. Das Problem ist, dass R variabel sein kann, 2 von 15 Zeichen können sich ändern oder gleich bleiben. Ich muss in der Lage sein, diese Variationen und mögliche zukünftige Variationen zu erkennen. Ich versuche, die variablen Zeichen auch entweder in der gleichen Position können nicht sein, eine separate Datenbank voll von diesen Variationen in R. zu müssen, so mit einem regulären Ausdruck wie:
re.findall(pattern = "CTGCTTGGCGGG[TC]T[CG]", string = fragment)
kann nicht funktionieren. Auch hier ist das, was ich mit, als es durch difflib versucht:
difflib.get_close_matches(repeat, fragment, cutoff = 0.85)
eine Wiederholung CTGCTTGGCGGGTTC
und das DNA-Fragment AAAATTGCGGCATGTGGGCTGACTCTGAAAGCGATGCTCACGAAAAGGGAACGCGGCGCCGTCGGGCGCCGCGCGCCGCTTAGGACTGCTGGCCTGCGGCCGGCGCCTGCTTGGCGGGTTCCTGCTTGGCGGGCTCCTGCTTGGCGGGTTCCTGCTTGGCGGGTTCCTGCTTGGCGGGTTCCTGCTTGGCGGGCTGCTGCTTGGCGGGCTGCTGGGCCGGCGCCTGCTGGCCAGGAGCGGGCTGCTGGCCGGCAGGCGCCGCGCCCCCCTTGTTCCAGGGCGAAGCCTGCACCGGCGCCCCCGGACGGATCTTCTGGAAGCCTTCGACCACCACCACGTCTCCCGCCGCCAGG
wäre wäre.
Mit Wiederholung, ich meine, dass R mehrmals im DNA-Fragment wiederholt wird.
Danke.
Es ist nicht ganz klar, was du machen willst. Bitte geben Sie ein Beispiel an. Außerdem können Sie besser angeben, ob Überlappungszählungen, etc. –
können Sie ein Beispiel von 'R' und' F' einfügen und erklären Sie weiter, was Sie als eine Wiederholung definieren? – mitoRibo
Vielleicht könntest du dir das mal anschauen: http://biopython.org/DIST/docs/api/Bio.motifs-module.html – bli