This is a test version of Biostars. For the public version, visit https://www.biostars.org.
How To Filter Bam File

Hi, I have one BAM file which contains all alignments (include those not used in variant calling, such as non-PF, non-mapping and duplicate reads) generated for an assembly. How to filter these useless mapping? I know that Picard MarkDuplicates can be used to remove duplicates.Thank you.

filter

2 answers

You can use samtools to do this. e.g. to remove reads that did not align, you can do:

samtools view -F 0x04 -b in.bam > out.aligned.bam

to only include paired reads, use:

-f 0x02

Check the other bitwise flags on this page.

But you might not want to exclude those as they could be used for finding structural variations.

Thank you. Your answer is very useful, I will try it.

The bamtools package offers a wide range of filters, including user-definable filters defined in JSON notation. It includes filters for reads failing vendor QC, unmapped reads and pre-marked duplicates.

Thanks for telling me such a useful software.

Log in to answer this question.