Bio-Community
view release on metacpan or search on metacpan
lib/Bio/Community/Meta/Beta.pm view on Meta::CPAN
percentage permuted is meaningless), undef is returned.
=item maxiphi
A beta diversity measure between 0 and 1, based on the percentage of species
shared and the percentage of top species permuted (that have had a change in
abundance rank).
=back
=head1 AUTHOR
Florent Angly L<florent.angly@gmail.com>
=head1 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,
L<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:
L<https://redmine.open-bio.org/projects/bioperl/>
=head1 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.
=head1 APPENDIX
The rest of the documentation details each of the object
methods. Internal methods are usually preceded with a _
=head2 new
Function: Create a new Bio::Community::Meta::Beta object
Usage : my $beta = Bio::Community::Meta::Beta->new(
-metacommunity => $meta,
-type => 'euclidean',
);
Args : -metacommunity : See metacommunity(). This is required!
-type : See type().
Returns : a Bio::Community::Meta::Beta object
=cut
package Bio::Community::Meta::Beta;
use Moose;
use MooseX::NonMoose;
use MooseX::StrictConstructor;
use Method::Signatures;
use namespace::autoclean;
use List::Util qw(min max);
use Bio::Community::Meta;
extends 'Bio::Root::Root';
=head2 metacommunity
Function: Get or set the communities to process, given as a metacommunity.
Usage : my $meta = $beta->metacommunity;
Args : A Bio::Community::Meta object
Returns : A Bio::Community::Meta object
=cut
has metacommunity => (
is => 'ro',
isa => 'Bio::Community::Meta',
required => 1,
lazy => 0,
init_arg => '-metacommunity',
);
=head2 type
Function: Get or set the beta diversity metric to calculate.
Usage : my $type = $beta->type;
Args : String for the desired type of beta diversity ('2-norm' by default).
See L</METRICS> for details.
Returns : String for the desired type of beta diversity
=cut
has type => (
is => 'rw',
isa => 'DistanceType',
required => 0,
lazy => 1,
default => '2-norm',
init_arg => '-type',
);
=head2 get_beta
Function: Calculate the beta diversity between two communities. The input
metacommunity should contain exactly two communities. The distance is
calculated based on the relative abundance (in %) of the members (not
their counts).
Usage : my $value = $beta->get_beta;
Args : None
Returns : A number for the beta diversity value
=cut
####after new => sub { # prevents inlining
#### or maybe try BUILD
method get_beta () {
return $self->_get_pairwise_beta($self->metacommunity);
( run in 1.146 second using v1.01-cache-2.11-cpan-39bf76dae61 )