The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Bio::Community::Alpha - Calculate the alpha diversity of a community

SYNOPSIS

  use Bio::Community::Alpha;
  
  my $alpha = Bio::Community::Alpha->new( -community => $community,
                                          -type      => 'observed'  );
  my $richness = $alpha->get_alpha;

DESCRIPTION

The Bio::Community::Alpha module calculates the alpha diversity within a community. The goal is to support many different alpha diversity metrics, but the only metric available at the moment is: richness.

For all these metrics, a higher value means that the community is more diverse.

AUTHOR

Florent Angly florent.angly@gmail.com

SUPPORT AND BUGS

User feedback is an integral part of the evolution of this and other Bioperl modules. Please direct usage questions or support issues to the mailing list, bioperl-l@bioperl.org, rather than to the module maintainer directly. Many experienced and reponsive experts will be able look at the problem and quickly address it. Please include a thorough description of the problem with code and data examples if at all possible.

If you have found a bug, please report it on the BioPerl bug tracking system to help us keep track the bugs and their resolution: https://redmine.open-bio.org/projects/bioperl/

COPYRIGHT

Copyright 2011,2012,2013 by the BioPerl Team bioperl-l@bioperl.org

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.10.1 or, at your option, any later version of Perl 5 you may have available.

APPENDIX

The rest of the documentation details each of the object methods. Internal methods are usually preceded with a _

new

 Function: Create a new Bio::Community::Alpha object
 Usage   : my $alpha = Bio::Community::Alpha->new( ... );
 Args    : -community : See community().
           -type      : See type().
 Returns : a new Bio::Community::Alpha object

community

 Function: Get or set the community to process.
 Usage   : my $community = $alpha->community();
 Args    : A Bio::Community object
 Returns : A Bio::Community object

type

 Function: Get or set the type of alpha diversity metric to measure.
 Usage   : my $type = $alpha->type;
 Args    : String for the desired type of alpha diversity ('observed' by default).

           Richness (or estimated number of species):
            * observed :  C<S>
            * menhinick:  C<S/sqrt(n)>, where C<n> is the total counts (observations).
            * margalef : C<(S-1)/ln(n)>
            * chao1    : Bias-corrected chao1 richness, C<S+n1*(n1-1)/(2*(n2+1))>
                         where C<n1> and C<n2> are the number of singletons and
                         doubletons, respectively. Particularly useful for data
                         skewed toward the low-abundance species, e.g. microbial.
                         Based on counts, not relative abundance.
            * ace      : Abundance-based Coverage Estimator (ACE). Based on
                         counts, not relative abundance.

           Evenness (or equitability):
            * buzas      : Buzas & Gibson's (or Sheldon's) evenness, C<e^H/S>.
                           Ranges from 0 to 1.
            * heip       : Heip's evenness, C<(e^H-1)/(S-1)>. Ranges from 0 to 1.
            * shannon_e  : Shannon's evenness, or the Shannon-Wiener index
                           divided by the maximum diversity possible in the
                           community. Ranges from 0 to 1.
            * simpson_e  : Simpson's evenness, or the Simpson's Index of Diversity
                           divided by the maximum diversity possible in the
                           community. Ranges from 0 to 1.
            * brillouin_e: Brillouin's evenness, or the Brillouin's index divided
                           by the maximum diversity possible in the community.
                           Ranges from 0 to 1.
            * hill_e     : Hill's C<E_2,1> evenness, i.e. Simpson's Reciprocal
                           index divided by C<e^H>.
            * mcintosh_e : McIntosh's evenness.
            * camargo    : Camargo's eveness. Ranges from 0 to 1.

           Indices (accounting for species abundance):
            * shannon  : Shannon-Wiener index C<H>. Emphasizes richness. Ranges
                         from 0 to infinity.
            * simpson  : Simpson's Index of Diversity C<1-D>, where C<D> is
                         Simpson's dominance index. C<1-D> is the probability
                         that two individuals taken randomly are not from the
                         same species. Emphasizes evenness. Ranges from 0 to 1.
            * simpson_r: Simpson's Reciprocal Index C<1/D>. Ranges from 1 to
                         infinity.
            * brillouin: Brillouin's index, appropriate for small, completely
                         censused communities. Based on counts, not relative
                         abundance.
            * hill     : Hill's C<N_inf> index, the inverse of the Berger-Parker
                         dominance. Ranges from 1 to infinity.
            * mcintosh : McIntosh's index. Based on counts, not relative abundance.

           Dominance (B<not> diversity metrics since the higher their value, the
           lower the diversity):
            * simpson_d: Simpson's Dominance Index C<D>. Ranges from 0 to 1.
            * berger   : Berger-Parker dominance, i.e. the proportion of the most
                         abundant species. Ranges from 0 to 1.

 Returns : String for the desired type of alpha diversity.

get_alpha

 Function: Calculate the alpha diversity of a community.
 Usage   : my $metric = $alpha->get_alpha;
 Args    : None
 Returns : A number for the alpha diversity measurement