Picard FilterSamReads not working


I am using FilterSamReads in Picard to remove reads from a BAM file that are 1) marked as either both first/second of pair and 2) do not have a mate pair. I am supplying the program with a .txt file containing a list of the reads that I wish to exclude.

Unfortunately, when I run ValidateSamFile, the new BAM file from FilterSamReads still has all the reads I thought it had deleted.

Here is the command I'm using.

java -jar FilterSamReads.jar I=example.bam EXCLUDE_READS=reads_to_remove.txt O=GG_example_filtered.bam

Any help would be greatly appreciated.


  • shleeshlee CambridgeMember, Broadie, Moderator

    Hi @freuv,

    I'm just about to run FilterSamReads myself. The tool expects you to define a FILTER mode for the reads in the list, e.g. FILTER=includeReadList to pick them out or FILTER=excludeReadList to remove them.

    Here's an example command:

    java -jar /home/shlee/picard-2.11.0/picard.jar FilterSamReads \
        INPUT=hcc1143_N_clean_querysort.bam \
        OUTPUT=mates_N_chr17.bam \
        FILTER=includeReadList \
        READ_LIST_FILE=f1_N_chr17.txt \
        SORT_ORDER=coordinate \
        CREATE_INDEX=true \
Sign In or Register to comment.