[Bioperl-l] Simple Sequence alignment, StandAloneBlast build failure, and also seeking advice
Roy Chaudhuri
roy.chaudhuri at gmail.com
Thu Dec 28 14:16:10 UTC 2017
Hi Demian,
There are some alignment algorithms built in to BioPerl, e.g.
Bio::Tools::pSW, Bio::Tools::dpAlign, as well as bioperl-run interfaces
to external tools such as BLAST, ClustalW, Muscle etc. Once you have an
alignment, then Bio::SimpleAlign has a percentage_identity method (and
there are more sophisticated distance measures available via
Bio::Align::ProteinStatistics and Bio::Align::DNAStatistics).
By the way, if you want to run Blast+ then you should be using
Bio::Tools::Run::BlastPlus not Bio::Tools::Run::StandAloneBlast (which
is for legacy BLAST - I guess that may explain why it's failing to build).
Cheers,
Roy.
On 08/12/2017 17:40, Demian Riccardi wrote:
> Hello,
>
> Does BioPerl provide a method for calculated sequence identity or does
> that only exist via external programs, such as Blast+? I followed along
> with the AlignIO_and_SimpleAlign HowTo, but
> Bio::Tools::Run::StandAloneBlast is failing to build
> ...
>
> ------------- EXCEPTION -------------
>
> MSG: Unknown version output: blastdbcmd: 2.7.1+
>
> Package: blast 2.7.1, build Oct 18 2017 20:40:57
>
> ....
>
>
> which is a little frustrating. A nice slow method would be just fine for
> a proof of principle for now, but I can't find one.
>
> Below is a little script displaying my dream (it uses a DBIx::Class
> database I wrote that has a bunch around 80K sequences that I'd like to
> play with using BioPerl). Any advice is appreciated. My apologies if I
> failed to find something obvious in the docs or how tos!
>
> Thanks,
> Demian
>
> use Modern::Perl;
>
> use lib'lib';
>
>
> use CysDB::Schema;
>
> use Bio::Seq;
>
> use Data::Dumper;
>
>
> my$schema= CysDB::Schema->connect('dbi:SQLite:cys.db');
>
>
> my$chain1= $schema->resultset('ChainCys')->find({id=> 1} );
>
> my$chain3= $schema->resultset('ChainCys')->find({id=> 3} );
>
>
> my$seq1= Bio::Seq->new(-seq=> $chain1->sequence, -alphabet=> 'protein');
>
> my$seq3= Bio::Seq->new(-seq=> $chain3->sequence, -alphabet=> 'protein');
>
>
> #my dream
>
>
> say some_align_function_returning_alignobject($seq1,$seq3)->percent_identity
>
>
> # Problem area comment
>
> #use Bio::Tools::Run::StandAloneBlast;
>
>
>
> #$factory = Bio::Tools::Run::StandAloneBlast->new(-outfile => 'bl2seq.out');
>
>
> #my $bl2seq_report = $factory->bl2seq($seq1, $seq2)
>
>
> #print Dumper $bl2seq;
>
>
>
>
> _______________________________________________
> Bioperl-l mailing list
> Bioperl-l at mailman.open-bio.org
> http://mailman.open-bio.org/mailman/listinfo/bioperl-l
>
More information about the Bioperl-l
mailing list