NAME
Bio::Tools::Phylo::PAML::ModelResult - A container for NSSite Model Result from PAML
VERSION
version 1.7.3
SYNOPSIS
# get a ModelResult from a PAML::Result objectuse Bio::Tools::Phylo::PAML;my $paml = Bio::Tools::Phylo::PAML->new(-file => 'mlc');my $result = $paml->next_result;foreach my $model ( $result->get_NSSite_results ) {print $model->model_num, " ", $model->model_description, "\n";print $model->kappa, "\n";print $model->run_time, "\n";# if you are using PAML < 3.15 then only one place for POS sitesfor my $sites ( $model->get_pos_selected_sites ) {print join("\t",@$sites),"\n";}# otherwise query NEB and BEB slotsfor my $sites ( $model->get_NEB_pos_selected_sites ) {print join("\t",@$sites),"\n";}for my $sites ( $model->get_BEB_pos_selected_sites ) {print join("\t",@$sites),"\n";}}
METHODS
new
Title : newUsage : my $obj = Bio::Tools::Phylo::PAML::ModelResult->new();Function: Builds a new Bio::Tools::Phylo::PAML::ModelResult objectReturns : an instance of Bio::Tools::Phylo::PAML::ModelResultArgs : -model_num => model number-model_description => model description-kappa => value of kappa-time_used => amount of time-pos_sites => arrayref of sites under positive selection-neb_sites => arrayref of sites under positive selection (by NEB analysis)-beb_sites => arrayref of sites under positive selection (by BEB analysis)-trees => arrayref of tree(s) data for this model-shape_params => hashref of parameters('shape' => 'alpha','gamma' => $g,'r' => $r,'f' => $f)OR( 'shape' => 'beta','p' => $p,'q' => $q)-likelihood => likelihood-num_site_classes => number of site classes-dnds_site_classes => hashref with two keys, 'p' and 'w'which each point to an array, eachslot is for a different site class.'w' is for dN/dS and 'p' is probability
model_num
Title : model_numUsage : $obj->model_num($newval)Function: Get/Set the Model number (0,1,2,3...)Returns : value of model_num (a scalar)Args : on set, new value (a scalar or undef, optional)
model_description
Title : model_descriptionUsage : $obj->model_description($newval)Function: Get/Set the model descriptionThis is something like 'one-ratio', 'neutral', 'selection'Returns : value of description (a scalar)Args : on set, new value (a scalar or undef, optional)
time_used
Title : time_usedUsage : $obj->time_used($newval)Function: Get/Set the time it took to run this analysisReturns : value of time_used (a scalar)Args : on set, new value (a scalar or undef, optional)
kappa
Title : kappaUsage : $obj->kappa($newval)Function: Get/Set kappa (ts/tv)Returns : value of kappa (a scalar)Args : on set, new value (a scalar or undef, optional)
num_site_classes
Title : num_site_classesUsage : $obj->num_site_classes($newval)Function: Get/Set the number of site classes for this modelReturns : value of num_site_classes (a scalar)Args : on set, new value (a scalar or undef, optional)
dnds_site_classes
Title : dnds_site_classesUsage : $obj->dnds_site_classes($newval)Function: Get/Set dN/dS site classes, a hashrefwith 2 keys, 'p' and 'w' which point to arraysone slot for each site class.Returns : value of dnds_site_classes (a hashref)Args : on set, new value (a scalar or undef, optional)
get_pos_selected_sites
Title : get_pos_selected_sitesUsage : my @sites = $modelresult->get_pos_selected_sites();Function: Get the sites which PAML has identified as under positiveselection (w > 1). This returns an array with each slotbeing a site, 4 values,site location (in the original alignment)Amino acid (I *think* in the first sequence)P (P value)Significance (** indicated > 99%, * indicates >=95%)Returns : ArrayArgs : none
add_pos_selected_site
Title : add_pos_selected_siteUsage : $result->add_pos_selected_site($site,$aa,$pvalue,$signif);Function: Add a site to the list of positively selected sitesReturns : count of the number of sites storedArgs : $site - site number (in the alignment)$aa - amino acid under selection$pvalue - float from 0->1 represent probability site is under selection according to this model$signif - significance (coded as either empty, '*', or '**'
get_NEB_pos_selected_sites
Title : get_NEB_pos_selected_sitesUsage : my @sites = $modelresult->get_NEB_pos_selected_sites();Function: Get the sites which PAML has identified as under positiveselection (w > 1) using Naive Empirical Bayes.This returns an array with each slot being a site, 4 values,site location (in the original alignment)Amino acid (I *think* in the first sequence)P (P value)Significance (** indicated > 99%, * indicates > 95%)post mean for wReturns : ArrayArgs : none
add_NEB_pos_selected_site
Title : add_NEB_pos_selected_siteUsage : $result->add_NEB_pos_selected_site($site,$aa,$pvalue,$signif);Function: Add a site to the list of positively selected sitesReturns : count of the number of sites storedArgs : $site - site number (in the alignment)$aa - amino acid under selection$pvalue - float from 0->1 represent probability site is under selection according to this model$signif - significance (coded as either empty, '*', or '**'$postmean - post mean for w
get_BEB_pos_selected_sites
Title : get_BEB_pos_selected_sitesUsage : my @sites = $modelresult->get_BEB_pos_selected_sites();Function: Get the sites which PAML has identified as under positiveselection (w > 1) using Bayes Empirical Bayes.This returns an array with each slot being a site, 6 values,site location (in the original alignment)Amino acid (I *think* in the first sequence)P (P value)Significance (** indicated > 99%, * indicates > 95%)post mean for w (mean)Standard Error for w (SE)Returns : ArrayArgs : none
add_BEB_pos_selected_site
Title : add_BEB_pos_selected_siteUsage : $result->add_BEB_pos_selected_site($site,$aa,$pvalue,$signif);Function: Add a site to the list of positively selected sitesReturns : count of the number of sites storedArgs : $site - site number (in the alignment)$aa - amino acid under selection$pvalue - float from 0->1 represent probability site is under selection according to this model$signif - significance (coded as either empty, '*', or '**'$postmean - post mean for w$SE - Standard Error for w
next_tree
Title : next_treeUsage : my $tree = $factory->next_tree;Function: Get the next tree from the factoryReturns : L<Bio::Tree::TreeI>Args : none
get_trees
Title : get_treesUsage : my @trees = $result->get_trees;Function: Get all the parsed trees as an arrayReturns : Array of treesArgs : none
rewind_tree_iterator
Title : rewind_tree_iteratorUsage : $result->rewind_tree_iterator()Function: Rewinds the tree iterator so that next_tree can becalled again from the beginningReturns : noneArgs : none
add_tree
Title : add_treeUsage : $result->add_tree($tree);Function: Adds a treeReturns : integer which is the number of trees storedArgs : L<Bio::Tree::TreeI>
shape_params
Title : shape_paramsUsage : $obj->shape_params($newval)Function: Get/Set shape params for the distribution, 'alpha', 'beta'which is a hashrefwith 1 keys, 'p' and 'q'Returns : value of shape_params (a scalar)Args : on set, new value (a scalar or undef, optional)
likelihood
Title : likelihoodUsage : $obj->likelihood($newval)Function: log likelihoodReturns : value of likelihood (a scalar)Args : on set, new value (a scalar or undef, optional)
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.
[email protected] - General discussionhttp://bioperl.org/Support.html - About the mailing lists
Support
Please direct usage questions or support issues to the mailing list: [email protected]
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 the web:
https://github.com/bioperl/bio-tools-phylo-paml/issues
AUTHOR
Jason Stajich <[email protected]>
COPYRIGHT
This software is copyright (c) by Jason Stajich <[email protected]>.
This software is available under the same terms as the perl 5 programming language system itself.