Es gibt viele Fälle, in denen ich eine BAM unterteilen möchte, um eine kleine Datei zu erstellen, mit der gearbeitet werden kann (z. B. algorithmisches Testen, Debuggen usw.).
Normalerweise mache ich Folgendes Teilmenge der BAM file.bam
und Behalte den Header
samtools view -H file.bam > header.samsamtools view file.bam | Kopf -n 5000 | cat header.sam - | samtools view -Sb - > file.unique.bam
In diesem Fall möchte ich 5000 Zeilen in Chromosom 1 und 5000 in Chromosom 2.
Ich könnte zuerst Versuchen Sie, nach einzelnen Chromosomen zu greifen, und kombinieren Sie dann die beiden SAMs
, z Hier ist die vollständige BAM mit grepped chr1 und (falschem, aber vollständigem) Header
samtools view -H file.bam > header.samsamtools view file.bam | grep "chr1" | cat header.sam - | samtools view -Sb - > file.unique.bam
aber dann habe ich zwei Probleme:
(1) Möglicherweise greife ich die Ausrichtungen zu Chromsome 2- nicht. - Es können BAM-Zeilen vorhanden sein, die 'chr2' enthalten, aber keine Alignments sind.
(2) Ich denke, man muss den Header manuell bearbeiten. Daran führt wahrscheinlich kein Weg vorbei.
Gibt es einen einfachen Weg, Bioinformatik SO?