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. This module supports different types of alpha diversity metrics: richness, evenness, dominance and indices. See type() for details.

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-2014 by Florent Angly <florent.angly@gmail.com>

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 and ranges
                        from 0 to infinity.
           * simpson  : Simpson's Index of Diversity C<1-D> (or Gini-Simpson
                        index), 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 and
                        anges 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. Undef is returned in
          special cases, e.g. when measuring the evenness or dominance in a
          community with no members.