[Bioperl-l] Bio::TreeIO

Jason Stajich jason@cgt.mc.duke.edu
Sat, 2 Feb 2002 10:06:11 -0500 (EST)


On Sat, 2 Feb 2002, Ardell, David wrote:

> Dear Bioperl colleagues
>
> I have been planning to introduce myself for about a month,
> right before I started traveling in the states from sweden. I have been
> using bioperl 0.7.0 for about a year and have written scripts
> and modified modules for my own use.
>
-hmm - would be interested in what modules you have modified - it only
helps the toolkit if you contribute suggestions, bugfixes, and
improvements back to the development effort.

> First, I want to say thanks for your efforts. bioperl is great and
> just about essentially useful for what I do (I have a population
> genetics background and am currently doing microbial genomics and
> molecular evolution).. it has saved my skin in several accounts.
>
We would definitely like to see population genetics type modules make
their way in - Heikki and I have been trying to get Population objects in
to handle interfacing with the Genetic Maps and work with my initial
Family objects that work with Pedigree drawing and analysis objects.

So far we have not put any population objects in place and would love to
see some proposals here.  Basically a definition of what types of
operations you would need to be able to implement the analysis/statistics
that you are interested in.

> Secondly, I have suggestions and scripts to contribute but have been
> bashful about sending something off to you because I am not caught up
> with the state of your development efforts.
>
> Lastly, I am writing now anyway because I saw something about a
> Bio::TreeIO mentioned on your list. I have developed Tree and TreeIO
> modules. I'd like to propose integrating them into bioperl, so long as
> i haven't reduplicated any of your efforts.
>

I've produced TreeIO and Tree objects in the 0.9.3 dev release which you
should check out - these were put in place so that I could potentially
convert between different tree formats and create random trees along the
lines of Richard Hudson's work (see Bio::Tree::RandomFactory for
reference).  In TreeIO have only implemented reading of
newick/newhampshire format but would like to implement read/write of
phyloXML and some other formats.

I also have implemented a module called Bio::Tree::Statistics that will
calculate Fu and Li's D for a given tree that contains AlleleNodes.  Plan
on adding some other statistics when I have time.

> The state of the modules is that they are currently suited for
> representing trees and tree formats, but are agnostic as to what kind
> of objects are at the tips of the trees. They are not explicitly
> bioperl and do not inherit the bioperl root object or interface.
>

Look at the Bio::Tree::*Node* objects - I have an allele node used for
storing alleles.  Would be interested in what other operations you would
find interesting.

> I am writing up a short publication about the modules as they are
> ready to be used by others (minus some documentation) and I want them
> to find a good home.
>
> I think what I would like to do is package them free-standing for the
> phylogenetics community to use. But, so long as you don't already have
> something like this in the pipeline, I would be open to contributing
> them to your project, and be interested in helping to plan how they
> could be integrated nicely inside bioperl with the alignment,
> sequence, and taxon representations. I would also be interested in
> writing modules to drive phylogenetics software and eat their output.
>

These are something I am interested in as well - providing a nice API that
would interact our alignment objects and calculate some molecular
evolution statistics. Do you think the Bio::Species object is rich
enough to handle all the taxon information we need?  It would also be
nice to interface with NCBI taxon information via taxonid # - and
so that one could instantiate a species object based ncbi taxonid.

As for analysis applications - we have an interface to EMBOSS which means
we have an indirect interface to PHYLIP.  We can Read/Write phylip and
nexus formats so plugging into other external analysis should be
relatively simple.

Would really enjoy having your help on any and all of the above.  Would be
things we can start to build in after the 1.0 release.

-jason

> Good luck with the new release!
>
> perl on
> dave
>
>
> Dave.Ardell@EBC.UU.SE
> _______________________________________________
> Bioperl-l mailing list
> Bioperl-l@bioperl.org
> http://bioperl.org/mailman/listinfo/bioperl-l
>

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