motmot.2.0 (version 1.1.2)

optim.likRatePhylo: Maximum likelihood rate estimation for traits and phylogenies

Description

Function for the maximum likelihood estimation of rate parameters on a trait and phylogeny.

Usage

optim.likRatePhylo(rateData, rate = NULL, fixed = NULL, rateMIN = 0.001,
  rateMAX = 50, common.mean = FALSE, lambda.est = TRUE, meserr = FALSE)

Arguments

rateData

an object of class "rateData"

rate

a vector of relative rate parameters. The length of the vector is equal to the number of rates being estimated. If rate=NULL then rates are equal.

fixed

A vector stating whether each parameter should be allowed to vary (either FALSE which results in a start value of 1, or a numeric start value) or should be fixed (TRUE).

rateMIN

Minimum value for the rate parameters

rateMAX

Maximum value for the rate parameters

common.mean

a logical specififying whether each rate category should have its own mean (common.mean=FALSE) or all categories should have the same mean (common.mean=FALSE). See Thomas et al. (2009) for a discussion on the impact of assumptions about mean on rate estimates.

lambda.est

Logical. Fit Pagel's lambda.

meserr

Logical. Include measurement error.

Value

MLRate Maximum likelihood estimates of the rate parameters

Max.lik Maximum (log) likeihood

AIC AIC for maximum likelihood model

AICc AICc for maximum likelihood model

convergence convergence value from optim

n.parameters Number of parameters in the model (how many means and rate categories)

References

Thomas GH, Freckleton RP, & Szekely T. 2006. Comparative analyses of the influence of developmental mode on phenotypic diversification rates in shorebirds. Proceedings of the Royal Society B 273, 1619-1624. Thomas GH, Meiri S, & Phillimore AB. 2009. Body size diversification in Anolis: novel environments and island effects. Evolution 63, 2017-2030.

Examples

Run this code
# NOT RUN {
data(anolis.tree)
data(anolis.data)

## Convert data to class rateData with a rateMatrix object as input
anolis.rateMatrix <- as.rateMatrix(phy=anolis.tree, x="geo_ecomorph", data=anolis.data)

anolis.rateData <- as.rateData(y="Female_SVL", x="geo_ecomorph", 
rateMatrix = anolis.rateMatrix, phy=NULL, data=anolis.data, log.y=TRUE)

# A model with a different rate in each of the four groups. The 'fixed' command is used to determine
# whether a particular rate is to be constrained or not. Use '1' to fix a group and 'FALSE' to show
# that the parameter is not fixed and should be estimated. The values should be entered in the same 
# order as the ranking of the groups. That is, group 0 (small islands) takes position one in the 
# fixed vector, group 1 (large island trunk crown and trunk ground) takes position 2 and so on. 
# The default is to allow each group to take a different mean. 

optim.likRatePhylo(anolis.rateData, rate=c(1,1,1,1), common.mean=TRUE, lambda.est=FALSE)
# }

Run the code above in your browser using DataCamp Workspace