Re: IndexOutOfBounds Exception when performing Pairwise Alignment

Hannes Brandstätter-Müller <[email protected]>
Newsgroups gmane.comp.java.bio.general
Message-ID <CAPXi2mmCM1ES23on39XBxXQ606aiAjcY1aokmq8f8QbLThubrA@mail.gmail.com>
On Tue, Dec 6, 2011 at 02:57, Andreas Prlic <[email protected]> wrote:
>> Now, I'm getting null return value - must be still something wrong in
>> the parameters...
>>
>> Where should I start looking for that?
>
> try different gap penalties, I think the default ones are for protein
> alignments and one of the blosum matrices...
> If that does not help, can you send some of the sequences that are
> causing problems? There should be more informative error messages..

There are no other gap penalties predefined, and using a custom simple
gap penalty with (gop=1, gep=1) also does not change the null outcome.
Here is a unit test case that fails for me:

public void testPSA() {
        String targetSeq =
"CACGTTTCTTGTGGCAGCTTAAGTTTGAATGTCATTTCTTCAATGGGACGGA"
                +
"GCGGGTGCGGTTGCTGGAAAGATGCATCTATAACCAAGAGGAGTCCGTGCGCTTCGACAGC"
                +
"GACGTGGGGGAGTACCGGGCGGTGACGGAGCTGGGGCGGCCTGATGCCGAGTACTGGAACA"
                +
"GCCAGAAGGACCTCCTGGAGCAGAGGCGGGCCGCGGTGGACACCTACTGCAGACACAACTA"
                + "CGGGGTTGGTGAGAGCTTCACAGTGCAGCGGCGAG";
        DNASequence target = new DNASequence(targetSeq,
AmbiguityDNACompoundSet.getDNACompoundSet());
        String querySeq =
"ACGAGTGCGTGTTTTCCCGCCTGGTCCCCAGGCCCCCTTTCCGTCCTCAGGAA"
                +
"GACAGAGGAGGAGCCCCTCGGGCTGCAGGTGGTGGGCGTTGCGGCGGCGGCCGGTTAAGGT"
                +
"TCCCAGTGCCCGCACCCGGCCCACGGGAGCCCCGGACTGGCGGCGTCACTGTCAGTGTCTT"
                +
"CTCAGGAGGCCGCCTGTGTGACTGGATCGTTCGTGTCCCCACAGCACGTTTCTTGGAGTAC"
                +
"TCTACGTCTGAGTGTCATTTCTTCAATGGGACGGAGCGGGTGCGGTTCCTGGACAGATACT"
                +
"TCCATAACCAGGAGGAGAACGTGCGCTTCGACAGCGACGTGGGGGAGTTCCGGGCGGTGAC"
                +
"GGAGCTGGGGCGGCCTGATGCCGAGTACTGGAACAGCCAGAAGGACATCCTGGAAGACGAG"
                +
"CGGGCCGCGGTGGACACCTACTGCAGACACAACTACGGGGTTGTGAGAGCTTCACCGTGCA"
                + "GCGGCGAGACGCACTCGT";
        DNASequence query = new DNASequence(querySeq);
        SubstitutionMatrix<NucleotideCompound> matrix =
SubstitutionMatrixHelper.getNuc4_4();
        SequencePair<DNASequence, NucleotideCompound> psa =
Alignments.getPairwiseAlignment(query, target,
PairwiseSequenceAlignerType.LOCAL, new SimpleGapPenalty(), matrix);
        assertNotNull(psa);
    }

>> Is there a simple way to align (or score, don't need the full
>> alignment) a single DNA sequence against a List of sequences?
>
> You could do a multiple sequence alignment.
> http://www.biojava.org/wiki/BioJava:CookBook3:MSA

yeah, but that also computes loads of unnecessary PSAs. I just need
the following:

I get some sequences (from a sequencing machine), and for each of
these sequences I want to look up in my (small) 'library' of reference
sequences which one would be the most likely. So, I don't want PSAs of
the reference sequences, just my query against each ref seq -
something like that should be in the biojava library itself, the only
thing I found was to calculate PSAs of eact sequence in a list (much
like you need for a MSA), but if biuojava could offer that using the
ConcurrencyTools stuff, that would be cool - I really need to figure
out the inner structure of the biojava classes and start implementing
that stuff for myself, but the factory method stuff is kinda confusing
to get a hang of.

As soon as I figure this out, I'm going to improve the hell out of the
cookbook examples. Those are next to useless for my scenario.

Hannes
_______________________________________________
Biojava-l mailing list  -  [email protected]
http://lists.open-bio.org/mailman/listinfo/biojava-l
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.