NAME
Bio::Phylo::Matrices::Datum - The character state sequence object.
SYNOPSIS
use Bio::Phylo::Matrices::Matrix;
use Bio::Phylo::Matrices::Datum;
use Bio::Phylo::Taxa::Taxon;
# instantiating a datum object...
my $datum = Bio::Phylo::Matrices::Datum->new(
-name => 'Tooth comb size,
-type => 'STANDARD',
-desc => 'number of teeth in lower jaw comb',
-pos => 1,
-weight => 2,
-char => [ 6 ],
);
# ...and linking it to a taxon object
my $taxon = Bio::Phylo::Taxa::Taxon->new(
-name => 'Lemur_catta'
);
$datum->set_taxon( $taxon );
# instantiating a matrix...
my $matrix = Bio::Phylo::Matrices::Matrix->new;
# ...and insert datum in matrix
$matrix->insert($datum);
DESCRIPTION
The datum object models a single observation or a sequence of observations, which can be linked to a taxon object.
METHODS
CONSTRUCTOR
- new()
-
Datum object constructor.
Type : Constructor Title : new Usage : my $datum = Bio::Phylo::Matrices::Datum->new; Function: Instantiates a Bio::Phylo::Matrices::Datum object. Returns : A Bio::Phylo::Matrices::Datum object. Args : None required. Optional: -taxon => $taxon, -weight => 0.234, -type => DNA, -pos => 2,
MUTATORS
- set_weight()
-
Sets invocant weight.
Type : Mutator Title : set_weight Usage : $datum->set_weight($weight); Function: Assigns a datum's weight. Returns : Modified object. Args : The $weight argument must be a number in any of Perl's number formats.
- set_char()
-
Sets character state(s)
Type : Mutator Title : set_char Usage : $datum->set_char($char); Function: Assigns a datum's character value. Returns : Modified object. Args : The $char argument is checked against the allowed ranges for the various character types: IUPAC nucleotide (for types of DNA|RNA|NUCLEOTIDE), IUPAC single letter amino acid codes (for type PROTEIN), integers (STANDARD) or any of perl's decimal formats (CONTINUOUS). The $char can be: * a single character; * a string of characters; * an array reference of characters; * an array of characters; Comments: Note that on assigning characters to a datum, previously set annotations are removed.
- set_position()
-
Set invocant starting position.
Type : Mutator Title : set_position Usage : $datum->set_position($pos); Function: Assigns a datum's position. Returns : Modified object. Args : $pos must be an integer.
- set_annotation()
-
Sets single annotation.
Type : Mutator Title : set_annotation Usage : $datum->set_annotation( -char => 1, -annotation => { -codonpos => 1 } ); Function: Assigns an annotation to a character in the datum. Returns : Modified object. Args : Required: -char => $int Optional: -annotation => $hashref Comments: Use this method to annotate a single character. To annotate multiple characters, use 'set_annotations' (see below).
- set_annotations()
-
Sets list of annotations.
Type : Mutator Title : set_annotations Usage : $datum->set_annotations( { '-codonpos' => 1 }, { '-codonpos' => 2 }, { '-codonpos' => 3 }, ); Function: Assign annotations to characters in the datum. Returns : Modified object. Args : Hash references, where position in the argument list matches that of the specified characters in the character list. Comments: Use this method to annotate multiple characters. To annotate a single character, use 'set_annotation' (see above).
ACCESSORS
- get_weight()
-
Gets invocant weight.
Type : Accessor Title : get_weight Usage : my $weight = $datum->get_weight; Function: Retrieves a datum's weight. Returns : FLOAT Args : NONE
- get_char()
-
Gets characters.
Type : Accessor Title : get_char Usage : my $char = $datum->get_char; Function: Retrieves a datum's character value. Returns : In scalar context, returns a single character, or a string of characters (e.g. a DNA sequence, or a space delimited series of continuous characters). In list context, returns a list of characters (of zero or more characters). Args : NONE
- get_position()
-
Gets invocant starting position.
Type : Accessor Title : get_position Usage : my $pos = $datum->get_position; Function: Retrieves a datum's position. Returns : a SCALAR integer. Args : NONE
- get_annotation()
-
Retrieves character annotation (hashref).
Type : Accessor Title : get_annotation Usage : $datum->get_annotation( '-char' => 1, '-key' => '-codonpos', ); Function: Retrieves an annotation to a character in the datum. Returns : SCALAR or HASH Args : Optional: -char => $int Optional: -key => $key
- get_length()
-
Gets invocant number of characters.
Type : Accessor Title : get_length Usage : my $length = $datum->get_length; Function: Retrieves a datum's length. Returns : a SCALAR integer. Args : NONE
- get_by_index()
-
Gets state at argument index.
Type : Accessor Title : get_by_index Usage : my $val = $datum->get_by_index($i); Function: Retrieves state at index $i. Returns : a character state. Args : INT
TESTS
- can_contain()
-
Tests if invocant can contain argument.
Type : Test Title : can_contain Usage : &do_something if $datum->can_contain( @args ); Function: Tests if $datum can contain @args Returns : BOOLEAN Args : One or more arguments as can be provided to set_char
METHODS
- reverse()
-
Reverses contents.
Type : Method Title : reverse Usage : $datum->reverse; Function: Reverses a datum's contained characters Returns : Returns modified $datum Args : NONE
- concat()
-
Appends argument to invocant.
Type : Method Title : reverse Usage : $datum->concat($datum1); Function: Appends $datum1 to $datum Returns : Returns modified $datum Args : NONE
- validate()
-
Validates invocant data contents.
Type : Method Title : validate Usage : $datum->validate; Function: Validates character data contained by $datum Returns : True or throws Bio::Phylo::Util::Exceptions::InvalidData Args : NONE
- copy_atts()
-
Not implemented!
- complement()
-
Not implemented!
- slice()
-
Not implemented!
SEE ALSO
- Bio::Phylo
-
This object inherits from Bio::Phylo, so the methods defined therein are also applicable to Bio::Phylo::Matrices::Datum objects.
- Bio::Phylo::Taxa::TaxonLinker
-
This object inherits from Bio::Phylo::Taxa::TaxonLinker, so the methods defined therein are also applicable to Bio::Phylo::Matrices::Datum objects.
- Bio::Phylo::Util::XMLWritable
-
This object inherits from Bio::Phylo::Util::XMLWritable, so the methods defined therein are also applicable to Bio::Phylo::Matrices::Datum objects.
- Bio::Phylo::Matrices::TypeSafeData
-
This object inherits from Bio::Phylo::Matrices::TypeSafeData, so the methods defined therein are also applicable to Bio::Phylo::Matrices::Datum objects.
- Bio::Phylo::Manual
-
Also see the manual: Bio::Phylo::Manual.
REVISION
$Id: Datum.pm 4251 2007-07-19 14:21:33Z rvosa $