dendropy.model.continuous
: Continuous Character Evolution¶
Models and modeling of continuous character evolution.
-
class
dendropy.model.continuous.
PhylogeneticIndependentConstrasts
(tree, char_matrix, polytomy_strategy=None)¶ Phylogenetic Independent Contrasts.
References
- Felsenstein, J. 1985. Phylogenies and the comparative method. American Naturalist 125:1-15.
- Garland, T., Jr., Jr., A. F. Bennett, and E. L. Rezende. 2005. Phylogenetic approaches in comparative physiology. Journal of Experimental Biology 208:3015-3035.
Parameters: - tree (
Tree
object) – Tree to use. - char_matrix (
ContinuousCharacterMatrix
) – ContinuousCharacterMatrix that is the source of the data - polytomy_strategy –
One of: ‘error’, ‘ignore’, ‘resolve’.
- ’error’
- Throws an error if tree has polytomies.
- ’ignore’
- No error, but raw contrasts will not be calculated for polytomies.
- ’resolve’
- Randomly resolve polytomies.
Defaults to ‘error’ if not specified or set to None.
-
contrasts_tree
(character_index, annotate_pic_statistics=True, state_values_as_node_labels=False, corrected_edge_lengths=False)¶ Returns a Tree object annotated with the following attributes added to each node (as annotations to be serialized if
annotate_pic_statistics
is True):pic_state_value
pic_state_variance
pic_contrast_raw
pic_contrast_variance
pic_contrast_standardized
pic_edge_length_error
pic_corrected_edge_length
-
tree
¶ This tree will have an attribute added to each node,
pic
. This attribute will be a dictionary with character (column) index as keys. Each column index will map to another dictionary that has the following keys (and values):pic_state_value
pic_state_variance
pic_contrast_raw
pic_contrast_variance
pic_contrast_standardized
pic_edge_length_error
pic_corrected_edge_length
-
dendropy.model.continuous.
evolve_continuous_char
(node, rng=None, **kwargs)¶ Takes a node and a random number generator object,
rng
This function “evolves” a set of rates on the subtree descending from thenode
.kwargs keys that are used are:
roeotroe
- the rate of evolution of the rate of evolution. This parameter that controls the degree of deviations away from the molecular clock.
min_rate
- is the minimum rate (default None)
max_rate
- is the maximum rate (default None),
model
- is a string specifying the name of the model. Currently only the KTB (Kishino, Thorne, Bruno) is supported
time_attr
- is a string that specifies the name of the attribute that returns the branch length in terms of time for a node. The default is “edge_length”
val_attr
- is the string that specifies the name of the attribute used to hold the value that is evolving along the nodes. The root of the subtree is assumed to have this field on calling of the function. On success all nodes in the subtree will have the attribute. The default is “mutation_rate”
mean_val_attr
- if specified this is string that gives the name of
attribute in each node that is mean value for the branch (default is
None). This is filled in after time_attr and val_attr are read,
so it is permissible to have this attribute match one of thos
strings (although it will make the model odd if the mean_val_attr
is the same as the val_attr)
constrain_rate_mode
controls the behavior when the minimum or maximum rate is simulated. The choices are “crop”, and “linear_bounce” “crop” means that the rate is set to the most extreme value allowed. “linear_bounce” considers the path of evolution of rate to be a simple line from the ancestor’s rate to the proposed rate. The point at which the path crosses the extreme value is determined and the rate is “reflected off” the limiting rate at that point. This causes the rate to avoid the extreme values more than a simulation of small time slices that simply rejects illegal rates.
Currently the only model supported is the one of Kishino, Thorne, and Bruno. “Performance of a Divergence Time Estimation Method under a Probabilistic Model of Rate Evolution.” Molecular Biology and Evolution (2001) vol. 18 (3) pp. 352-361. This model is specified by the code “KTB”. A node’s rate is a log-normal variate with variance determined by the product of the duration of the branch and the roeotroe parameter. The mean of the distribution is chosen such that mean of the log-normal is identical to the rate at the parent. The mean_rate for the branch is the average of the rates at the endpoints.