This is a test version of Biostars. For the public version, visit https://www.biostars.org.
Degenerate/combinatorial protein BLAST search

Hi,

I was wondering whether there's a way to perform protein BLAST searches allowing for particular positions to be degenerate. Nucleotide BLAST allows the usage of the IUPAC degenerate namings (N = A/C/G/T; K = G/T; and so on). For instance, say I have the following canonical sequence:

KRSCATTMG

And I want to perform a BLAST search with the first position being either K or R, and positions 6 and 7 being either T or S.

I'm aware BLAST allows for certain variability within the sequence, what I need to do is biasing such allowance in particular positions towards particular amino acids, while not allowing variability in other positions (in my example, for instance, I need position 4 to be a C).

Maybe a faster approach would be to just download BLAST databases and conditional filter through a python script?

blast

1 answer

Even if BLAST can do what you want, it is most likely not the best choice for it, especially if you have short search strings.

You may want to check out regular expressions like the ones used in PROSITE. For what you want, the pattern would be something like [KR]-R-S-C-A-[ST](2)-MG. There are programs that can search databases with these patterns:

https://ftp.expasy.org/databases/prosite/ps_scan/

Thanks a lot, your answer was really helpful and I could get what I needed using ScanProsite.

Log in to answer this question.