Remove clipped reads
1
0
Entering edit mode
4.6 years ago

Hello,

is there a tool or script which can remove reads from my bam files which contain soft clipped bases? It would be nice if I could also define to just remove reads that have at least n soft clipped bases, or the fraction of soft clipped bases is more than x.

Thanks for any advice.

fin swimmer

bam • 3.5k views
ADD COMMENT
0
Entering edit mode

This seems to remove only the soft clipped bases. But I'd like to get rid of the whole reads.

fin swimmer

ADD REPLY
0
Entering edit mode

There are two links in the post. Did you look at the second?

ADD REPLY
0
Entering edit mode

Oh, sorry haven't seen your edit.

But in your first link I also found a link to bamutils. A combination of removeclipping and filter seems to fit my needs. It's only a pity that bamutils seems not to support streaming.

Thanks for showing me the right direction.

fin swimmer

ADD REPLY
0
Entering edit mode

It's probably a bit late as you already have a BAM but if you really don't want any read clipped, your probably best off forcing your aligner to align entire reads (e.g. bowtie2 end-to-end).

ADD REPLY
1
Entering edit mode
4.6 years ago

up-to-date answer using samjdk: http://lindenb.github.io/jvarkit/SamJdk.html , removing clipped reads where more than 33% of the read is clipped.

java -jar dist/samjdk.jar -e 'return record.getReadUnmappedFlag() || record.getCigar()==null || record.getCigar().getCigarElements().stream().filter(C->C.getOperator().isClipping()).mapToInt(C->C.getLength()).sum() / (double)record.getCigar().getReadLength() < 0.33;'
ADD COMMENT
0
Entering edit mode

Is it possible to distinguish between soft-clipped and hard-clipped bases when removing the reads with this tool? I am only interested in removing reads with a specific % of soft-clipped bases.

ADD REPLY
0
Entering edit mode

replace : C.getOperator().isClipping()

with : C.getOperator().name().equals("H")

ADD REPLY
0
Entering edit mode

Thanks for the advice

ADD REPLY

Login before adding your answer.

Traffic: 2554 users visited in the last hour
Help About
FAQ
Access RSS
API
Stats

Use of this site constitutes acceptance of our User Agreement and Privacy Policy.

Powered by the version 2.3.6