Frage:
Finden des Ortes und der Längeneinheit von sich wiederholenden Sequenzen innerhalb eines langen Lesevorgangs
gringer
2017-06-02 07:48:05 UTC
view on stackexchange narkive permalink

Nachdem ich einige Schwierigkeiten bei der Genomassemblierung entdeckt habe, habe ich mich dafür interessiert, repetitive DNA-Sequenzen zu finden und zu kategorisieren, wie diese von Nippostrongylus brasiliensis [jede Base ist farbcodiert als A: Grün; C: blau; G: gelb; T: rot]:

Repeat sequence represented in a rectangular fashion Repeat sequence represented in a circular fashion

[Die dieser Sequenz zugeordnete FASTA-Datei befindet sich hier]

Diese Sequenzen mit großen Wiederholungseinheiten können nur mit langen Lesevorgängen (z. B. PacBio, Nanopore) erkannt (und zusammengesetzt) ​​werden, da eine Teilsequenz, die kleiner als die Einheitslänge ist, nicht möglich ist um zwischen Sequenzierungsfehlern und dem Treffen einer anderen Stelle innerhalb der Wiederholungsstruktur zu unterscheiden. Ich habe diese Sequenzen mit zwei Methoden in großen Mengen aufgespürt:

  1. Ausführen eines All-vs-All-Mappings und Suchen nach Sequenzen, die sich oft selbst zuordnen
  2. Durchführen einer Komprimierung der Sequenz (z. B. bzip2) und Auffinden von Sequenzen mit einer Komprimierungsrate, die wesentlich höher als normal ist
  3. ol>

    Nachdem ich eine verdächtige Sequenz gefunden habe, habe ich dann möchten in der Lage sein, die Wiederholung zu kategorisieren (z. B. Hauptwiederholungslänge, Anzahl der Tandemwiederholungen, Wiederholungssequenz). Hier stecke ich fest.

    Für eine "Look, Shiny" -Demonstration habe ich derzeit einen sehr manuellen Prozess, um diese Sequenzen in ein Format zu bringen, das ich visualisieren kann. Mein Prozess ist wie folgt:

    1. Verwenden Sie LAST, um ein Punktdiagramm der Selbstzuordnung für die Zuordnung zu erstellen.
    2. Identifizieren Sie die sich wiederholende Region visuell und extrahieren Sie die Region aus der Sequenz
    3. Verwenden Sie eine Kombination aus fold -w <width> und less -S , um die Sequenz mit verschiedenen potenziellen Wiederholungsbreiten visuell zu untersuchen und die wahrscheinlichste zu finden Größe der Wiederholungseinheit
    4. Zeigen Sie die Sequenz mit meinem eigenen Skript rechteckig und kreisförmig an und wickeln Sie sie in der Länge der Wiederholungseinheit
    5. ein

      Aber dieser Prozess ist keineswegs machbar, wenn ich Tausende potenzieller sich wiederholender Sequenzen zum Fischen habe.

      Gibt es einen besseren Weg, dies zu tun? Wie kann ich bei einer beliebigen DNA-Sequenz mit einer Länge von> 10 kb (auf automatisierte Weise) sowohl den Ort der Wiederholungsregion als auch die Einheitslänge ermitteln (unter Berücksichtigung der Tatsache, dass es möglicherweise mehrere Wiederholungsstrukturen mit Einheitslängen ab 30 bp gibt? bis 10 kb)?

      Eine Beispielsequenz finden Sie hier, die einen Wiederholungsbereich von ~ 21 kb mit ~ 171 bp Wiederholungseinheiten etwa 1/3 des Weges in die Sequenz aufweist.

      Eine Kmer-basierte Analyse

      Ich habe jetzt menschliche Sequenzen mit sich wiederholenden Regionen von mehr als 10 KB gesehen (dh außerhalb des Bereichs der meisten verknüpften Lesevorgänge) Anwendungen). Meine aktuelle Idee konzentriert sich darauf, Hash-Tabellen mit kurzen Sequenzen (derzeit 13 Minuten) zu erstellen und deren Position zu verfolgen:

      1. Verarbeiten Sie die Sequenz und speichern Sie die Position jedes Kmer
      2. Finden Sie für jeden Kmer heraus, wie oft er in der Sequenz erscheint.
      3. Finden Sie bei wiederholten Kilometern heraus, wie groß die Lücke zwischen dem nächsten Auftreten des Kmer ist.
      4. Geben Sie die mittlere und modale Spaltlänge von wiederholten Kilometern und Statistiken an, die mit ihrer Häufigkeit in der Sequenz verknüpft sind.
      5. ol>

        Einige lokale repetitive Regionen können bei diesem Ansatz in den Statistiken verloren gehen. Es ist schwer zu sagen, ob es innerhalb einer einzelnen Sequenz mehrere sich wiederholende Regionen gibt und ob sich die Wiederholungseinheiten selbst leicht wiederholen (genug, dass ein Kmer innerhalb einer Wiederholungseinheit dupliziert wird), dann meldet der Algorithmus die Wiederholbarkeit zu wenig (siehe Schritt 3) ).

Würde Ihnen RepeatMasker hier helfen? Oder findet es nur bekannte sich wiederholende Elemente und Regionen mit geringer Komplexität? Ich habe nie versucht, damit einfache Wiederholungen zu identifizieren.
Diese Wiederholungen haben hochkomplexe Wiederholungseinheiten; Ich habe nicht festgestellt, dass die Regionen durch Tantan oder Staub markiert sind, und vermute, dass RepeatMasker ähnlich sein wird. Zumindest der Webdienst kann den Wiederholungsbereich in der von mir verknüpften Testsequenz nicht finden.
Ich kenne [diesen Blog-Beitrag] (https://dazzlerblog.wordpress.com/2016/04/01/detecting-and-soft-masking-repeats/) von Gene Myers, wo er die Strategie verwendet, Wiederholungen in langen Lesevorgängen zu maskieren um die Genomassemblierung zu beschleunigen. Ich bin nicht sicher, ob es genau das ist, was Sie wollen, aber ich dachte, es könnte nützlich sein.
Vielen Dank. TANmask (ganz am Ende des Beitrags) ähnelt sehr der Art von Algorithmus, nach der ich suche. Es wird zumindest das Grenzproblem lösen, wenn nicht die Statistik der Wiederholungseinheitenlänge. Können Sie das als Antwort aufschreiben?
Zwei antworten:
#1
+2
Sergio Arredondo
2017-06-02 19:20:35 UTC
view on stackexchange narkive permalink

Es könnte eine Idee sein, die langen Lesevorgänge in kleine Sequenzen zu fragmentieren, z. B. Illumina-Lesevorgänge von 150 bp zu simulieren, und diese kleinen Sequenzen dann den ursprünglichen langen Lesevorgängen zuzuordnen und Regionen mit einer hohen Abdeckung zu extrahieren?

#2
+2
gringer
2018-09-04 16:09:01 UTC
view on stackexchange narkive permalink

Ich habe die Visualisierung aussortiert. Hier sind drei alternative Darstellungen sich wiederholender Strukturen für dieselbe Sequenz:

Repeat patterns represented as a dotplot Repeat patterns represented as a linear "ripple" plot Repeat patterns represented as a semicircular "sunset" plot

Diese wurden mit demselben R-Skript generiert, das über die Befehlszeile aufgerufen werden kann:

  $ repaver.r -art dotplot -prefix dotplot MAOA_chrX_43645715-43756016.fa $ repaver. r-Stil-Profil-Präfix-Profil MAOA_chrX_43645715-43756016.fa $ repaver.r-Stil halbkreisförmig-Präfix semi MAOA_chrX_43645715-43756016.fa  

Weitere Details hierzu finden Sie in der Präsentation Ich habe auf der Queenstown Research Week 2018 gegeben. In Kürze wird es auch ein von Experten begutachtetes eBook-Kapitel geben.

Dies ist schnell genug, damit ich es in etwa der Hälfte auf dem Genom der Nanopore C. elegans ausführen kann eine Stunde, um diese Diagramme für jeden Contig zu erstellen. Ich habe keine Methode, um diesen Plot zu durchlaufen und die dominante Wiederholungslänge an jedem Ort auszuwählen, aber das ist eine [relativ] einfache Erweiterung dessen, was ich bereits getan habe.



Diese Fragen und Antworten wurden automatisch aus der englischen Sprache übersetzt.Der ursprüngliche Inhalt ist auf stackexchange verfügbar. Wir danken ihm für die cc by-sa 3.0-Lizenz, unter der er vertrieben wird.
Loading...