Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
Bio::Tools::Phylo::PAMUsereContributed Perl Bio::Tools::Phylo::PAML::Result(3)

NAME
       Bio::Tools::Phylo::PAML::Result - A PAML	result set object

SYNOPSIS
	 # see Bio::Tools::Phylo::PAML for example usage
	 use Bio::Tools::Phylo::PAML;
	 my $parser = Bio::Tools::Phylo::PAML->new
	   (-file => "./results/mlc", -dir => "./results/");

	 # get the first/next result; a	Bio::Tools::Phylo::PAML::Result	object,
	 # which isa Bio::SeqAnalysisResultI object.
	 my $result = $parser->next_result();

	 my @seqs	  = $result->get_seqs;
	 my %input_params = $result->get_input_parameters;
	 my @basfreq	  = $result->get_codon_pos_basefreq;
	 my $MLmatrix	  = $result->get_MLmatrix; # get MaxLikelihood Matrix
	 my $NGmatrix	  = $result->get_NGmatrix; # get Nei-Gojoburi Matrix

	 # for AAML runs
	 my $AAmatrix	= $result->get_AADistMatrix;
	 my $AAMLmatrix	  = $result->get_AAMLDistMatrix;

	 # if -dir contains an rst file	get list of
	 # Bio::PrimarySeq ancestral state reconstructions of the sequences
	 my @rsts	   = $result->get_rst_seqs;

	 # if you want to print	the changes on the tree
	 # this	will print out the
	 # anc_aa	=> ANCESTRAL AMINO ACID
	 # anc_prob	=> ANCESTRAL AA	PROBABILITY
	 # derived_aa	=> DERIVED AA
	 # derived_prob	=> DERIVE AA PROBABILITY (where	appropriate - NA for extant/tip	taxas)
	 # site		=> which codon site this in the	alignment
	   @trees = $result->get_rst_trees;
	   for my $t ( @trees )	{
	       for my $node ( $t->get_nodes ) {
		   next	unless $node->ancestor;	# skip root node
		   my @changes = $node->get_tag_values('changes');
		   my $chgstr =	'';
		   for my $c ( @changes	) {
		       for my $k ( sort	keys %$c ) {
			   $chgstr .= "$k => $c->{$k} ";
		       }
		       $chgstr .= "\n\t";
		   }

		   printf "node:%s n=%s	s=%s\n\t%s\n",
		   $node->id,
		   $node->get_tag_values('n'),
		   $node->get_tag_values('s'),
		   $chgstr;
	       }
	   }

	 # Persite probabilities
	 my $persite = $result->get_rst_persite;
	 # let's score site 1
	 $site = $persite->[2];
	 # so site 2, node 2 (extant node, node	2)
	 print $site->[2]->{'codon'}, '	',$site->[2]->{'aa'},"\n";
	 # site	2, node	3
	 print $site->[3]->{'codon'}, '	',$site->[3]->{'aa'}, "\n";

	 # ancestral node 9, codon, aa,	marginal probabilities;	Yang95 is listed as
	 #  (eqn. 4 in Yang et al. 1995	Genetics 141:1641-1650)	in PAML	rst file.
	 print $site->[9]->{'codon'}, '	',$site->[9]->{'aa'}, '	', $site->[9]->{'prob'}, ' ',
	       $site->[9]->{'Yang95_aa'},' ', $site->[9]->{'Yang95_aa_prob'},"\n";

DESCRIPTION
       This is a container object for PAML Results.

FEEDBACK
   Mailing Lists
       User feedback is	an integral part of the	evolution of this and other
       Bioperl modules.	Send your comments and suggestions preferably to the
       Bioperl mailing list.  Your participation is much appreciated.

	 bioperl-l@bioperl.org			- General discussion
	 http://bioperl.org/wiki/Mailing_lists	- About	the mailing lists

   Support
       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.

   Reporting Bugs
       Report bugs to the Bioperl bug tracking system to help us keep track of
       the bugs	and their resolution. Bug reports can be submitted via email
       or the web:

	 https://github.com/bioperl/bioperl-live/issues

AUTHOR - Jason Stajich,	Aaron Mackey
	Email jason-at-bioperl-dot-org
	Email amackey-at-virginia-dot-edu

CONTRIBUTORS
       Albert Vilella avilella-AT-gmail-DOT-com

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

   new
	Title	: new
	Usage	: my $obj = Bio::Tools::Phylo::PAML::Result->new(%data);
	Function: Builds a new Bio::Tools::Phylo::PAML::Result object
	Returns	: Bio::Tools::Phylo::PAML::Result
	Args	: -trees     =>	array reference	of Bio::Tree::TreeI objects
		  -MLmatrix  =>	ML matrix
		  -seqs	     =>	array reference	of Bio::PrimarySeqI objects
		  -codonpos  =>	array reference	of codon positions
		  -codonfreq =>	array reference	of codon frequencies
		  -version   =>	version	string
		  -model     =>	model string
		  -patterns  =>	hashref	with the fields	'-patterns', '-ns', '-ls'
		  -stats     =>	array ref of misc stats	  (optional)
		  -aafreq    =>	Hashref	of AA frequencies (only	for AAML)
		  -aadistmat =>	Bio::Matrix::PhylipDist	  (only	for AAML)
		  -aamldistmat => Bio::Matrix::PhylipDist   (only for pairwise AAML)
		  -ntfreq    =>	array ref of NT	frequencies (only for BASEML)
		  -seqfile    => seqfile used
		  -kappa_mat =>	Bio::Matrix::PhylipDist	of kappa values	(only for BASEML)
		  -alpha_mat =>	Bio::Matrix::PhylipDist	of alpha values	(only for BASEML)
		  -NSSitesresult => arrayref of	PAML::ModelResult
		  -input_params	 => input params from .ctl file
		  -rst	     =>	array reference	of Bio::PrimarySeqI objects
				of ancestral state reconstruction
		  -rst_persite=> arrayref of persite data, this	is a complicated set of	AoH
		  -rst_trees  => rst trees with	changes	coded on the tree

       See Also: Bio::Tree::TreeI, Bio::PrimarySeqI, Bio::Matrix::PhylipDist,
       Bio::Tools::Phylo::PAML

   next_tree
	Title	: next_tree
	Usage	: my $tree = $factory->next_tree;
	Function: Get the next tree from the factory
	Returns	: L<Bio::Tree::TreeI>
	Args	: none

   get_trees
	Title	: get_trees
	Usage	: my @trees = $result->get_trees;
	Function: Get all the parsed trees as an array
	Returns	: Array	of trees
	Args	: none

   rewind_tree_iterator
	Title	: rewind_tree_iterator
	Usage	: $result->rewind_tree_iterator()
	Function: Rewinds the tree iterator so that next_tree can be
		  called again from the	beginning
	Returns	: none
	Args	: none

   add_tree
	Title	: add_tree
	Usage	: $result->add_tree($tree);
	Function: Adds a tree
	Returns	: integer which	is the number of trees stored
	Args	: L<Bio::Tree::TreeI>

   set_MLmatrix
	Title	: set_MLmatrix
	Usage	: $result->set_MLmatrix($mat)
	Function: Set the ML Matrix
	Returns	: none
	Args	: Arrayref to MLmatrix (must be	arrayref to 2D matrix whic is
		  lower	triangle pairwise)

   get_MLmatrix
	Title	: get_MLmatrix
	Usage	: my $mat = $result->get_MLmatrix()
	Function: Get the ML matrix
	Returns	: 2D Array reference
	Args	: none

   set_NGmatrix
	Title	: set_NGmatrix
	Usage	: $result->set_NGmatrix($mat)
	Function: Set the Nei &	Gojobori Matrix
	Returns	: none
	Args	: Arrayref to NGmatrix (must be	arrayref to 2D matrix whic is
		  lower	triangle pairwise)

   get_NGmatrix
	Title	: get_NGmatrix
	Usage	: my $mat = $result->get_NGmatrix()
	Function: Get the Nei &	Gojobori matrix
	Returns	: 2D Array reference
	Args	: none

   add_seq
	Title	: add_seq
	Usage	: $obj->add_seq($seq)
	Function: Add a	Bio::PrimarySeq	to the Result
	Returns	: none
	Args	: Bio::PrimarySeqI
       See also	: L<Bio::PrimarySeqI>

   reset_seqs
	Title	: reset_seqs
	Usage	: $result->reset_seqs
	Function: Reset	the OTU	seqs stored
	Returns	: none
	Args	: none

   get_seqs
	Title	: get_seqs
	Usage	: my @otus = $result->get_seqs
	Function: Get the seqs Bio::PrimarySeq (OTU = Operational Taxonomic Unit)
	Returns	: Array	of Bio::PrimarySeq
	Args	: None
       See also	: L<Bio::PrimarySeq>

   set_codon_pos_basefreq
	Title	: set_codon_pos_basefreq
	Usage	: $result->set_codon_pos_basefreq(@freqs)
	Function: Set the codon	position base frequencies
	Returns	: none
	Args	: Array	of length 3 where each slot has	a hashref
		  keyed	on DNA base

   get_codon_pos_basefreq
	Title	: get_codon_pos_basefreq
	Usage	: my @basepos =	$result->get_codon_pos_basefreq;
	Function: Get the codon	position base frequencies
	Returns	: Array	of length 3 (each codon	position), each
		  slot is a hashref keyed on DNA bases,	the values are
		  the frequency	of the base at that position for all sequences
	Args	: none
	Note	: The array starts at 0	so position '1'	is in position '0'
		  of the array

   version
	Title	: version
	Usage	: $obj->version($newval)
	Function: Get/Set version
	Returns	: value	of version
	Args	: newvalue (optional)

   seqfile
	Title	: seqfile
	Usage	: $obj->seqfile($newval)
	Function: Get/Set seqfile
	Returns	: value	of seqfile
	Args	: newvalue (optional)

   model
	Title	: model
	Usage	: $obj->model($newval)
	Function: Get/Set model
	Returns	: value	of model
	Args	: on set, new value (a scalar or undef,	optional)

   patterns
	Title	: patterns
	Usage	: $obj->patterns($newval)
	Function: Get/Set Patterns hash
	Returns	: Hashref of pattern data
	Args	: [optional] Hashref of	patterns
		: The hashref is typically
		: { -patterns => \@arrayref
		:   -ns	      => $ns
		:   -ls	      => $ls
		: }

   set_AAFreqs
	Title	: set_AAFreqs
	Usage	: $result->set_AAFreqs(\%aafreqs);
	Function: Get/Set AA freqs
	Returns	: none
	Args	: Hashref, keys	are the	sequence names,	each points to a hashref
		  which	in turn	has keys which are the amino acids

   get_AAFreqs
	Title	: get_AAFreqs
	Usage	: my %all_aa_freqs = $result->get_AAFreqs()
		   OR
		  my %seq_aa_freqs = $result->get_AAFreqs($seqname)
	Function: Get the AA freqs, either for every sequence or just
		  for a	specific sequence
		  The average aa freqs for the entire set are also available
		  for the sequence named 'Average'
	Returns	: Hashref
	Args	: (optional) sequence name to retrieve aa freqs	for

   set_NTFreqs
	Title	: set_NTFreqs
	Usage	: $result->set_NTFreqs(\%aafreqs);
	Function: Get/Set NT freqs
	Returns	: none
	Args	: Hashref, keys	are the	sequence names,	each points to a hashref
		  which	in turn	has keys which are the amino acids

   get_NTFreqs
	Title	: get_NTFreqs
	Usage	: my %all_nt_freqs = $result->get_NTFreqs()
		   OR
		  my %seq_nt_freqs = $result->get_NTFreqs($seqname)
	Function: Get the NT freqs, either for every sequence or just
		  for a	specific sequence
		  The average nt freqs for the entire set are also available
		  for the sequence named 'Average'
	Returns	: Hashref
	Args	: (optional) sequence name to retrieve nt freqs	for

   add_stat
	Title	: add_stat
	Usage	: $result->add_stat($stat,$value);
	Function: Add some misc	stat valuess (key/value	pairs)
	Returns	: none
	Args	: $stat	 stat name
		  $value stat value

   get_stat
	Title	: get_stat
	Usage	: my $value = $result->get_stat($name);
	Function: Get the value	for a stat of a	given name
	Returns	: scalar value
	Args	: name of the stat

   get_stat_names
	Title	: get_stat_names
	Usage	: my @names = $result->get_stat_names;
	Function: Get the stat names stored for	the result
	Returns	: array	of names
	Args	: none

   get_AADistMatrix
	Title	: get_AADistMatrix
	Usage	: my $mat = $obj->get_AADistMatrix()
	Function: Get AADistance Matrix
	Returns	: value	of AADistMatrix	(Bio::Matrix::PhylipDist)
	Args	: none

   set_AADistMatrix
	Title	: set_AADistMatrix
	Usage	: $obj->set_AADistMatrix($mat);
	Function: Set the AADistrance Matrix (Bio::Matrix::PhylipDist)
	Returns	: none
	Args	: AADistrance Matrix (Bio::Matrix::PhylipDist)

   get_AAMLDistMatrix
	Title	: get_AAMLDistMatrix
	Usage	: my $mat = $obj->get_AAMLDistMatrix()
	Function: Get AAMLDistance Matrix
	Returns	: value	of AAMLDistMatrix (Bio::Matrix::PhylipDist)
	Args	: none

   set_AAMLDistMatrix
	Title	: set_AAMLDistMatrix
	Usage	: $obj->set_AAMLDistMatrix($mat);
	Function: Set the AA ML	Distrance Matrix (Bio::Matrix::PhylipDist)
	Returns	: none
	Args	: AAMLDistrance	Matrix (Bio::Matrix::PhylipDist)

   add_NSSite_result
	Title	: add_NSSite_result
	Usage	: $result->add_NSSite_result($model)
	Function: Add a	NSsite result (PAML::ModelResult)
	Returns	: none
	Args	: Bio::Tools::Phylo::PAML::ModelResult

   get_NSSite_results
	Title	: get_NSSite_results
	Usage	: my @results =	@{$self->get_NSSite_results};
	Function: Get the reference to the array of NSSite_results
	Returns	: Array	of PAML::ModelResult results
	Args	: none

   set_CodonFreqs
	Title	: set_CodonFreqs
	Usage	: $obj->set_CodonFreqs($newval)
	Function: Get/Set the Codon Frequence table
	Returns	: value	of set_CodonFreqs (a scalar)
	Args	: on set, new value (a scalar or undef,	optional)

   get_CodonFreqs
	Title	: get_CodonFreqs
	Usage	: my @codon_freqs = $result->get_CodonFreqs()
	Function: Get the Codon	freqs
	Returns	: Array
	Args	: none

   BASEML Relavent values
   get_KappaMatrix
	Title	: get_KappaMatrix
	Usage	: my $mat = $obj->get_KappaMatrix()
	Function: Get KappaDistance Matrix
	Returns	: value	of KappaMatrix (Bio::Matrix::PhylipDist)
	Args	: none

   set_KappaMatrix
	Title	: set_KappaMatrix
	Usage	: $obj->set_KappaMatrix($mat);
	Function: Set the KappaDistrance Matrix	(Bio::Matrix::PhylipDist)
	Returns	: none
	Args	: KappaDistrance Matrix	(Bio::Matrix::PhylipDist)

   get_AlphaMatrix
	Title	: get_AlphaMatrix
	Usage	: my $mat = $obj->get_AlphaMatrix()
	Function: Get AlphaDistance Matrix
	Returns	: value	of AlphaMatrix (Bio::Matrix::PhylipDist)
	Args	: none

   set_AlphaMatrix
	Title	: set_AlphaMatrix
	Usage	: $obj->set_AlphaMatrix($mat);
	Function: Set the AlphaDistrance Matrix	(Bio::Matrix::PhylipDist)
	Returns	: none
	Args	: AlphaDistrance Matrix	(Bio::Matrix::PhylipDist)

   set_input_parameter
	Title	: set_input_parameter
	Usage	: $obj->set_input_parameter($p,$vl);
	Function: Set an Input Parameter
	Returns	: none
	Args	: $parameter and $value

   get_input_parameters
	Title	: get_input_parameters
	Usage	: $obj->get_input_parameters;
	Function: Get Input Parameters
	Returns	: Hash of key/value pairs
	Args	: none

   reset_input_parameters
	Title	: reset_input_parameters
	Usage	: $obj->reset_input_parameters;
	Function: Reset	the Input Parameters hash
	Returns	: none
	Args	: none

Reconstructed Ancestral	State relevant options
   add_rst_seq
	Title	: add_rst_seq
	Usage	: $obj->add_rst_seq($seq)
	Function: Add a	Bio::PrimarySeq	to the RST Result
	Returns	: none
	Args	: Bio::PrimarySeqI
       See also	: L<Bio::PrimarySeqI>

   reset_rst_seqs
	Title	: reset_rst_seqs
	Usage	: $result->reset_rst_seqs
	Function: Reset	the RST	seqs stored
	Returns	: none
	Args	: none

   get_rst_seqs
	Title	: get_rst_seqs
	Usage	: my @otus = $result->get_rst_seqs
	Function: Get the seqs Bio::PrimarySeq
	Returns	: Array	of Bio::PrimarySeqI objects
	Args	: None
       See also	: L<Bio::PrimarySeq>

   add_rst_tree
	Title	: add_rst_tree
	Usage	: $obj->add_rst_tree($tree)
	Function: Add a	Bio::Tree::TreeI to the	RST Result
	Returns	: none
	Args	: Bio::Tree::TreeI
       See also	: L<Bio::Tree::TreeI>

   reset_rst_trees
	Title	: reset_rst_trees
	Usage	: $result->reset_rst_trees
	Function: Reset	the RST	trees stored
	Returns	: none
	Args	: none

   get_rst_trees
	Title	: get_rst_trees
	Usage	: my @otus = $result->get_rst_trees
	Function: Get the trees	Bio::Tree::TreeI
	Returns	: Array	of Bio::Tree::TreeI objects
	Args	: None
       See also	: L<Bio::Tree::TreeI>

   set_rst_persite
	Title	: set_rst_persite
	Usage	: $obj->set_rst_persite($newval)
	Function: Get/Set the per-site RST values
	Returns	: value	of set_rst_persite (a scalar)
	Args	: on set, new value (a scalar or undef,	optional)

   get_rst_persite
	Title	: get_rst_persite
	Usage	: my @rst_persite = @{$result->get_rst_persite()}
	Function: Get the per-site RST values
	Returns	: Array
	Args	: none

perl v5.24.1			  2017-07-08Bio::Tools::Phylo::PAML::Result(3)

NAME | SYNOPSIS | DESCRIPTION | FEEDBACK | AUTHOR - Jason Stajich, Aaron Mackey | CONTRIBUTORS | APPENDIX | Reconstructed Ancestral State relevant options

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=Bio::Tools::Phylo::PAML::Result&sektion=3&manpath=FreeBSD+12.1-RELEASE+and+Ports>

home | help