[Bioperl-l] motif features?

Jason Stajich jason@cgt.mc.duke.edu
Thu, 17 Oct 2002 20:48:14 -0400 (EDT)


Mostly as features - Boris has written a TFBS finder which may eventually
get imported into bioperl - would be good if we converge on an interface
http://forkhead.cgb.ki.se/TFBS/

I think he basically has a TFBS::Site object for this which is essentially
a SeqFeature with additional fields.

-j

# POD

=head1 NAME

TFBS::Site - a nucleotide sequence feature object representing (possibly
putativ
e) transcription factor binding site.

=head1 SYNOPSIS

    # manual creation of site object;
    # for details, see documentation of Bio::SeqFeature::Generic;

    my $site = TFBS::Site
                  (-start => $start_pos,     # integer
                   -end   => $end_pos,       # integer
                   -score => $score,         # float
                   -source => "TFBS",        # string
                   -primary => "TF binding site",  # primary tag
                   -strand => $strand,       # -1, 0 or 1
                   -seqobj => $seqobj,       # a Bio::Seq object whose
sequence
                                             #            contains the
site
                   -pattern => $pattern_obj  # usu. TFBS::Matrix:PWM obj.

-jason

On 18 Oct 2002, Shawn wrote:

>
> Hi all,
> 	I'm toying around with some motif finders mainly FootPrinter right now.
> I was wondering whether there have been any work to represent
> motifs in bioperl. Dugged around but I'm not sure that attaching
> SeqFeatures to sequence would do the trick.
>
> Mainly what I would like to represent is that given n sequences, we
> would have m different motifs (possibly overlapping) found across them.
>
> What I'm thinking of is to have some kinda
> Bio::Seq::Motif or Bio::SeqFeature::Motif or Bio::Motif
> that has a bunch of SeqFeatures attached to it representing
> where this motif lies on the list of sequences.
>
> A use case:
>
> use Bio::SeqIO;
> use Bio::Tools::Run::FootPrinter;
>
> my $sio = Bio::SeqIO->new(-file=>"seq.fa",-format=>"fasta");
> my @seq;
> while(my $seq = $sio->next_seq){
> 	push @seq, $seq;
> }
>
> my $fp = Bio::Tools::Run::FootPrinter->new();
>
> my @motif = $fp->run(@seq);
>
> foreach my $m (@motif){
>  print $m->consensus."\n";
>  foreach my $seqfeat($m->seqfeatures){
>   print $seqfeat->seq_id."\t".$seqfeat->start."\t".$seqfeat->end."\n";
>  }
> }
>
> Other methods like
>
> $motif->information_content (bits)
> $motif->pssm (weight matrix)
> $motif->width
> $motif->evalue etc...
>
>
>
> Throwing this out for discussion and half hoping someone's already done
> something like that but I'm not finding it or that its a worthwhile
> expedition.
>
>
> cheers,
>
> shawn
>
>
>
>
>
>
> _______________________________________________
> Bioperl-l mailing list
> Bioperl-l@bioperl.org
> http://bioperl.org/mailman/listinfo/bioperl-l
>

-- 
Jason Stajich
Duke University
jason at cgt.mc.duke.edu