[Bioperl-l] All roads lead to Bio::Seq

Lincoln Stein lstein@cshl.org
Tue, 03 Dec 2002 09:47:19 -0500


Looks good to me.

Lincoln

On Monday 02 December 2002 01:10 pm, Ewan Birney wrote:
> I will soon commit this which is reorganise the documentation in
> Bio::Seq, Bio::SeqI, Bio::PrimarySeqI and Bio::PrimarySeq to stress
> that Bio::Seq has the best documentation and starting point for users
> of the package. I am also using [Developers] in the =head1 NAME line to
> indicate that a package is for developers only.
>
> I will commit this because I think this is much much better than what is
> there at the moment, which was pretty confusing, but recent-newbies - any
> other thoughts about this synopsis and also any other reassuring words
> to make in Bio::Seq?
>
>
> Here is the Bio::Seq synopsis...
>
>
>
>     # This is the main sequence object in Bioperl
>
>     # gets a sequence from a file
>     $seqio  = Bio::SeqIO->new( '-format' => 'embl' , -file =>
> 'myfile.dat'); $seqobj = $seqio->next_seq();
>
>     # SeqIO can both read and write sequences; see Bio::SeqIO
>     # for more information and examples
>
>     # get from database
>     $db = Bio::DB::GenBank->new();
>     $seqobj = $db->get_Seq_by_acc('X78121');
>
>     # make from strings in script
>     $seqobj = Bio::Seq->new( -display_id => 'my_id',
> 			     -seq => $sequence_as_string);
>
>     # gets sequence as a string from sequence object
>     $seqstr   = $seqobj->seq(); # actual sequence as a string
>     $seqstr   = $seqobj->subseq(10,50); # slice in biological coordinates
>
>     # retrieves information from the sequence
>     # features must implement Bio::SeqFeatureI interface
>
>     @features = $seqobj->get_SeqFeatures(); # just top level
>     foreach my $feat ( @features ) {
> 	print "Feature ",$feat->primary_tag," starts ",$feat->start," ends ",
> 	$feat->end," strand ",$feat->strand,"\n";
>
>         # features retain link to underlying sequence object
>         print "Feature sequence is ",$feat->seq->seq(),"\n"
>     }
>
>     # sequences may have a species
>
>     if( defined $seq->species ) {
> 	print "Sequence is from ",$species->binomial_name,"
> [",$species->common_name,"]\n"; }
>
>     # annotation objects are Bio::AnnotationCollectionI's
>     $ann      = $seqobj->annotation(); # annotation object
>
>     # references is one type of annotations to get. Also get
>     # comment and dblink. Look at Bio::AnnotationCollection for
>     # more information
>
>     foreach my $ref ( $ann->get_Annotations('reference') ) {
> 	print "Reference ",$ref->title,"\n";
>     }
>
>     # you can get truncations, translations and reverse complements, these
>     # all give back Bio::Seq objects themselves, though currently with no
>     # features transfered
>
>     my $trunc = $seqobj->trunc(100,200);
>     my $rev   = $seqobj->revcom();
>
>     # there are many options to translate
>     my $trans = $seqobj->translate();
>
>     # these functions can be chained together
>
>     my $trans_trunc_rev = $seqobj->trunc(100,200)->revcom->translate();
>
>
>
> _______________________________________________
> Bioperl-l mailing list
> Bioperl-l@bioperl.org
> http://bioperl.org/mailman/listinfo/bioperl-l

-- 
Lincoln Stein
lstein@cshl.org