Ich habe kürzlich Ubuntu 16.04 installiert (weil ich noch 12.04 verwendet habe). Aber es scheint, dass meine Bedtools-Skripte nicht mehr richtig funktionieren. Ich kann nicht herausfinden, wie ich die neuen Bedtools für meine alten Methoden verwenden soll. Was ich tun möchte, ist die Anzahl der Lesevorgänge aus einer BAM-Datei pro Intervall aus einer Bettdatei. Mit meiner alten Version von Ubuntu und Bedtools war es sehr einfach:
bedtools coverage -abam file.bam -b All_peaks.bed > file.cov.txt
Aber das scheint nicht mehr zu funktionieren. Früher habe ich kleine Dateien als Ergebnis erhalten (~ 3 MB), aber jetzt werden riesige Dateien erstellt (~ 4 GB), einschließlich gelesener Namen?
Ich verwende jetzt bedtools v2.25.
Antwort
Die Reihenfolge von -a
und -b
wurde irgendwann geändert. Sie möchten:
bedtools coverage -a All_peaks.bed -b file.bam > file.cov.txt
Als Referenz ist dies das Ende der Hilfeausgabe in Version 2.25:
Default Output: After each entry in A, reports: 1) The number of features in B that overlapped the A interval. 2) The number of bases in A that had non-zero coverage. 3) The length of the entry in A. 4) The fraction of bases in A that had non-zero coverage.
Und dies ist die entsprechende Ausgabe aus Version 2.19:
Default Output: After each entry in B, reports: 1) The number of features in A that overlapped the B interval. 2) The number of bases in B that had non-zero coverage. 3) The length of the entry in B. 4) The fraction of bases in B that had non-zero coverage.
Update : Die Verhaltensänderung erfolgte in Version 2.24:
Wir haben das Verhalten des Coverage-Tools so geändert, dass es mit dem übereinstimmt Die anderen Tools. Insbesondere wird die Abdeckung jetzt für die Intervalle in der A-Datei basierend auf der Überlappung berechnet s mit der B-Datei und nicht umgekehrt.
Kommentare
- Danke Devon! ' war mir der ' -Schalter ' nicht bekannt. Das Umschalten von -a und -b löst in der Tat mein Problem!