nodeEstimate: nodeEstimate

View source: R/nodeEstimate.R

nodeEstimateR Documentation

nodeEstimate

Description

This function estimates the ancestral character states for continuous characters given a model of evolution or using the best fit model of evolution from the fitContinuous function in the geiger package. The ancestral states are estimated using GLS described in Martins and Hansen (1997).

Usage

nodeEstimate(treedata.obj, traitnum, model = "BM", bounds = list(), 
control = list(), plot.est = FALSE)

Arguments

treedata.obj

an object of the class "treedata".

traitnum

the column number of the trait within the treedata object to be reconstructed.

model

the model of evolution to use in the ancestral state reconstruction. Options are "estimate", "BM", "OU", "EB", "lambda", "kappa", "delta".

bounds

bounds used for the model, passes to fitContinuous(), uses default if none specified.

control

setting used for optimization of the model likelihood. Passes to fitContinuous().

plot.est

logical. whether or not to plot the traitgram of the estimated ancestor states.

Details

See the fitContinuous() details for descriptions of the models of evolution and parameter estimation. nodeEstimate() currently supports the following models of evolution: Brownian motion (Felsenstein, 1973), Ornstein-Uhlenbeck (Butler and King, 2004), early-burst (Harmon et al., 2010), lambda (Pagel, 1999), kappa (Pagel, 1999), and delta (Pagel, 1999).

Value

an object of the class "nodeEstimate".

model if model = "estimate", the best fit model of evolution. If the model was specified, then model is the specified model.

est the ancestral node estimates of the continuous character.

phy the phylogeny used for the estimates, which might be transformed depending on the evolutionary model.

BM if model = "BM", returned values from fitContinuous() where the model is "BM"

OU if model = "OU", returned values from fitContinuous() where the model is "OU"

EB if model = "EB", returned values from fitContinuous() where the model is "EB"

lambda if model = "lambda", returned values from fitContinuous() where the model is "lambda"

kappa if model = "kappa", returned values from fitContinuous() where the model is "kappa"

delta if model = "delta", returned values from fitContinuous() where the model is "delta"

fitted if model = "estimate", returned values from the best fit model of evolution.

Author(s)

A. Michelle Lawing, Alexandra F. C. Howard

References

Butler, M. A. and King, A. A. (2004) Phylogenetic comparative analysis: a modeling approach for adaptive evolution. American Naturalist, 164:683-695.

Felsenstein, J. (1973) Maximum likelihood estimation of evolutionary trees from continuous characters. American Journal of Human Genetics, 25:471-492

Harmon, L. J. et al. (2010) Early bursts of body size and shape evolution are rare in comparative data. Evolution, 64:2385-2396

Martins, E. P. and Hansen, T. F. (1997) Phylogenies and the comparative method: a general approach to incorporating phylogenetic information into the analysis of interspecific data. American Naturalist, 149, 646–667.

Pagel M. (1999) Inferring the historical patterns of biological evolution. Nature, 401:877-884

See Also

fitContinuous()

Examples

data(sampletrees)
data(occurrences)
occurrences <- getBioclimVars(occurrences, which.biovars=1)
sp_data_min<- tapply(occurrences[,4],occurrences$Species,min)
ex <- geiger::treedata(sampletrees[[1]], sp_data_min)
nodeEstimate(ex, 1, model = 'OU') #runs OU model

michellelawing/ppgm documentation built on April 24, 2024, 10:17 p.m.