how to trim bases from the end of a sequence?

I’d like to remove bases from sequences that are over x long, but I can’t find a command that will allow me to do that. trim.seqs and screen.seqs seem to just discard all sequences over x bases which isn’t what I want. Is there a way in mothur to remove bases from a sequence just on the position?


Sorry, there isn’t. Can you give an example for where you might want to do something like this? I typically do it by aligning my sequences and then doing filter(trump=.) to remove bases that don’t overlap, which trims everything to the same alignment coordinates.

This is something that confused me as well when I was starting out with mothur. The trim function actually filters and the filter function actually trims!


Pat-I have pyrotags that were run at different times so some of them are only ~200bp while the newer ones are longer (same region, just better pyrosequencing). I’m trying to compare them directly so was going to trim the newer tags to match the older. I was wanting to trim before aligning just because I know the length and didn’t want to bother to align all of the extra bp on the newer sequences.

@Robin - yeah, yeah, yeah. I know. :wink:

@kmitchell - i’d go with the screen.seqs/filter.seqs approach for now, I don’t know that it will really be that awful to align the extra bases. I’ll add it to the list for future features - chop.seqs…?

ok I’ll align then trim.

chop.seqs sounds good


I wanted to do this also, however, it is not allowable. What I did was aligning first then filtering just like what others have suggested…

car floor mats

chop.seqs will be in the next release, thanks for the suggestion.