PCMBase1.2.15 package

Simulation and Likelihood Calculation of Phylogenetic Comparative Models

Args_MixedGaussian_MGPMDefaultModelTypes

Arguments to be passed to the constructor MixedGaussian when construct...

Args_MixedGaussian_MGPMScalarOUType

Arguments for the MixedGaussian constructor for scalar OU MGPM models.

Args_MixedGaussian_MGPMSurfaceOUType

Arguments for the MixedGaussian constructor for SURFACE OU MGPM models...

as.MixedGaussian

Convert a GaussianPCM model object to a MixedGaussian model object

FormatCellAsLatex

Latex representation of a model parameter or other found in a data.tab...

FormatTableAsLatex

Latex representation of a data.table with matrix and vectors in its ce...

is.GaussianPCM

Check if an object is a GaussianPCM

is.MixedGaussian

Check if an object is a MixedGaussian PCM

is.PCM

Check if an object is a PCM.

is.PCMTree

Check that a tree is a PCMTree

MatchListMembers

Find the members in a list matching a member expression

MGPMScalarOUType

Class name for the scalar OU MGPM model type

MGPMSurfaceOUType

Class name for the SURFACE OU MGPM model type

MixedGaussian

Create a multi-regime Gaussian model (MixedGaussian)

MixedGaussianTemplate

Create a template MixedGaussian object containing a regime for each mo...

PCM

Create a phylogenetic comparative model object

PCMAbCdEf

Quadratic polynomial parameters A, b, C, d, E, f for each node

PCMAddToListAttribute

Add a value to a list-valued attribute of a member or members matching...

PCMApplyTransformation

Map a parametrization to its original form.

PCMBaseIsADevRelease

Check if the PCMBase version corresponds to a dev release

PCMColorPalette

A fixed palette of n colors

PCMCombineListAttribute

Combine all member attributes of a given name into a list

PCMCond.GaussianPCM

Conditional distribution of a daughter node given its parent node

PCMCond

Conditional distribution of a daughter node given its parent node

PCMCondVOU

Variance-covariance matrix of an OU process with optional measurement ...

PCMCreateLikelihood

Create a likelihood function of a numerical vector parameter

PCMDefaultModelTypes

Class names for the the default PCM and MGPM model types

PCMDefaultObject

Generate a default object of a given PCM model type or parameter type

PCMDescribe

Human friendly description of a PCM

PCMDescribeParameters

Describe the parameters of a PCM

PCMExtractDimensions

Given a PCM or a parameter object, extract an analogical object for a ...

PCMExtractRegimes

Given a PCM or a parameter object, extract an analogical object for a ...

PCMFindMethod

Find the S3 method for a given PCM object or class-name and an S3 gene...

PCMFixParameter

Fix a parameter in a PCM model

PCMGenerateModelTypes

Generate default model types for given PCM base-classes

PCMGenerateParameterizations

Generate possible parameterizations for a given type of model

PCMGetAttribute

Value of an attribute of an object or values for an attribute found in...

PCMGetVecParamsRegimesAndModels

Get a vector of all parameters (real and discrete) describing a model ...

PCMInfo

Meta-information about a tree and trait data associated with a PCM

PCMLik

Likelihood of a multivariate Gaussian phylogenetic comparative model w...

PCMLikDmvNorm

Calculate the likelihood of a model using the standard formula for mul...

PCMLikTrace

Tracing the log-likelihood calculation of a model over each node of th...

PCMListMembers

A vector of access-code strings to all members of a named list

PCMListParameterizations

Specify the parameterizations for each parameter of a model

PCMLmr

Quadratic polynomial parameters L, m, r

PCMMapModelTypesToRegimes

Integer vector giving the model type index for each regime

PCMMean

Expected mean vector at each tip conditioned on a trait-value vector a...

PCMMeanAtTime

Calculate the mean at time t, given X0, under a PCM model

PCMModels

Get a list of PCM models currently implemented

PCMModelTypes

Get the model type(s) of a model

PCMNumRegimes

Number of regimes in a obj

PCMNumTraits

Number of traits modeled by a PCM

PCMOptions

Global options for the PCMBase package

PCMPairSums

Sums of pairs of elements in a vector

PCMParam

Module PCMParam

PCMParamBindRegimeParams

Bind named vectors or matrices into an array so that the names form th...

PCMParamCount

Count the number of free parameters associated with a PCM or a PCM-par...

PCMParamGetShortVector

Get a vector of the variable numeric parameters in a model

PCMParamLoadOrStore

Load (or store) a PCM parameter from (or to) a vector of the variable ...

PCMParamLocateInShortVector

Locate a named parameter in the short vector representation of a model

PCMParamLowerLimit

The lower limit for a given model or parameter type

PCMParamRandomVecParams

Generate a random parameter vector for a model using uniform distribut...

PCMParamSetByName

Set model parameters from a named list

PCMParamType

Parameter types

PCMParamUpperLimit

The upper limit for a given model or parameter type

PCMParentClasses

Parent S3 classes for a model class

PCMParseErrorMessage

Extract error information from a formatted error message.

PCMPExpxMeanExp

Create a function of time that calculates $(1-exp(-lambda_ij*time))/la...

PCMPLambdaP_1

Eigen-decomposition of a matrix H

PCMPlotGaussianDensityGrid2D

A 2D Gaussian distribution density grid in the form of a ggplot object

PCMPlotGaussianSample2D

A 2D sample from Gaussian distribution

PCMPlotMath

Beautiful model description based on plotmath

PCMPlotTraitData2D

Scatter plot of 2-dimensional data

PCMPresentCoordinates

Determine which traits are present (active) on each node of the tree

PCMRegimes

Get the regimes (aka colors) of a PCM or of a PCMTree object

PCMSetAttribute

Set an attribute of a named member in a PCM or other named list object

PCMSim

Simulation of a phylogenetic comparative model on a tree

PCMSpecify

Parameter specification of PCM model

PCMTable

A data.table representation of a PCM object

PCMTableParameterizations

Cartesian product of possible parameterizations for the different para...

PCMTrajectory

Generate a trajectory for the mean in one regime of a PCM

PCMTree

Create a PCMTree object from a phylo object

PCMTreeBackbonePartition

Prune the tree leaving one tip for each or some of its parts

PCMTreeDropClade

Drop a clade from a phylogenetic tree

PCMTreeDtNodes

A data.table with time, part and regime information for the nodes in a...

PCMTreeEdgeTimes

A matrix with the begin and end time from the root for each edge in tr...

PCMTreeEvalNestedEDxOnTree

Perfrorm nested extractions or drops of clades from a tree

PCMTreeExtractClade

Extract a clade from phylogenetic tree

PCMTreeGetBranchLength

The length of the branch leading to a node

PCMTreeGetDaughters

A vector of the daughter nodes for a given parent node id in a tree

PCMTreeGetLabels

Node labels of a tree

PCMTreeGetParent

The parent node id of a daughter node in a tree

PCMTreeGetPartition

Get the starting branch' nodes for each part on a tree

PCMTreeGetPartNames

Unique parts on a tree in the order of occurrence from the root to the...

PCMTreeGetPartRegimes

Regime mapping for the parts in a tree

PCMTreeGetPartsForNodes

Get the parts of the branches leading to a set of nodes or tips

PCMTreeGetRegimesForEdges

Model regimes (i.e. colors) associated with the branches in a tree

PCMTreeGetRegimesForNodes

Get the regimes of the branches leading to a set of nodes or tips

PCMTreeGetTipsInPart

Get the tips belonging to a part in a tree

PCMTreeGetTipsInRegime

Get the tips belonging to a regime in a tree

PCMTreeInsertSingletons

Insert tips or singleton nodes on chosen edges

PCMTreeJumps

Jumps in modeled traits associated with branches in a tree

PCMTreeListAllPartitions

A list of all possible (including recursive) partitions of a tree

PCMTreeListCladePartitions

A list of all possible clade partitions of a tree with a number of spl...

PCMTreeListDescendants

A list of the descendants for each node in a tree

PCMTreeListRootPaths

A list of the path to the root from each node in a tree

PCMTreeLocateEpochOnBranches

Find the crossing points of an epoch-time with each lineage of a tree

PCMTreeLocateMidpointsOnBranches

Find the middle point of each branch longer than a threshold

PCMTreeMatchLabels

Get the node numbers associated with tip- or node-labels in a tree

PCMTreeMatrixNodesInSamePart

Which couples from a given set of nodes in a tree belong to the same p...

PCMTreeNearestNodesToEpoch

Find the nearest node to a given time from the root (epoch) on each li...

PCMTreeNodeTimes

Calculate the time from the root to each node of the tree

PCMTreeNumNodes

Number of all nodes in a tree

PCMTreeNumParts

Number of unique parts on a tree

PCMTreeNumTips

Wrapper for length(tree$tip.label)

PCMTreePlot

Plot a tree with parts and regimes assigned to these parts

PCMTreePostorder

Post-order tree traversal

PCMTreePreorder

Pre-order tree traversal

PCMTreeSetLabels

Set tip and internal node labels in a tree

PCMTreeSetPartition

Set a partition of a tree by specifying the partition nodes

PCMTreeSetPartRegimes

Set regimes for the parts in a tree

PCMTreeSetRegimesForEdges

Set the regime for each individual edge in a tree explicitly

PCMTreeSplitAtNode

Slit a tree at a given internal node into a clade rooted at this node ...

PCMTreeTableAncestors

A matrix (table) of ancestors/descendants for each node in a tree

PCMTreeToString

A character representation of a phylo object.

PCMTreeVCV

Phylogenetic Variance-covariance matrix

PCMUnfixParameter

Unfix a parameter in a PCM model

PCMVar

Expected variance-covariance matrix for each couple of tips (i,j)

PCMVarAtTime

Calculate the variance covariance k x k matrix at time t, under a PCM ...

RequireSuggestedPackages

Check if all packages listed in Suggests are available

TruePositiveRate

True positive rate of a set of binary predictions against their trues

UpperTriFactor

Upper triangular factor of a symmetric positive definite matrix

White

White Gaussian PCM ignoring phylogenetic history

Phylogenetic comparative methods represent models of continuous trait data associated with the tips of a phylogenetic tree. Examples of such models are Gaussian continuous time branching stochastic processes such as Brownian motion (BM) and Ornstein-Uhlenbeck (OU) processes, which regard the data at the tips of the tree as an observed (final) state of a Markov process starting from an initial state at the root and evolving along the branches of the tree. The PCMBase R package provides a general framework for manipulating such models. This framework consists of an application programming interface for specifying data and model parameters, and efficient algorithms for simulating trait evolution under a model and calculating the likelihood of model parameters for an assumed model and trait data. The package implements a growing collection of models, which currently includes BM, OU, BM/OU with jumps, two-speed OU as well as mixed Gaussian models, in which different types of the above models can be associated with different branches of the tree. The PCMBase package is limited to trait-simulation and likelihood calculation of (mixed) Gaussian phylogenetic models. The PCMFit package provides functionality for inference of these models to tree and trait data. The package web-site <https://venelin.github.io/PCMBase/> provides access to the documentation and other resources.

  • Maintainer: Venelin Mitov
  • License: GPL (>= 3.0)
  • Last published: 2025-09-01