X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=man%2Face.Rd;h=15bd38758e42de2c7ede2fb709125350ced28b62;hb=da67dccb93d35408baa48b141fcda921772c8b9c;hp=73934dfb303498aacbdcaf7a2fe78bc536f7b532;hpb=f5793d2af1299540f8ff7ad9ec8c1a6de1fee4cf;p=ape.git diff --git a/man/ace.Rd b/man/ace.Rd index 73934df..15bd387 100644 --- a/man/ace.Rd +++ b/man/ace.Rd @@ -1,27 +1,46 @@ \name{ace} \alias{ace} +\alias{print.ace} \alias{logLik.ace} \alias{deviance.ace} \alias{AIC.ace} \alias{anova.ace} \title{Ancestral Character Estimation} +\description{ + This function estimates ancestral character states, and the associated + uncertainty, for continuous and discrete characters. + + \code{logLik}, \code{deviance}, and \code{AIC} are generic functions + used to extract the log-likelihood, the deviance, or the Akaike + information criterion of a fitted object. If no such values are + available, \code{NULL} is returned. + + \code{anova} is another generic function which is used to compare + nested models: the significance of the additional parameter(s) is + tested with likelihood ratio tests. You must ensure that the models + are effectively nested (if they are not, the results will be + meaningless). It is better to list the models from the smallest to the + largest. +} \usage{ ace(x, phy, type = "continuous", method = "ML", CI = TRUE, model = if (type == "continuous") "BM" else "ER", scaled = TRUE, kappa = 1, corStruct = NULL, ip = 0.1) +\method{print}{ace}(x, digits = 4, ...) \method{logLik}{ace}(object, ...) \method{deviance}{ace}(object, ...) \method{AIC}{ace}(object, ..., k = 2) \method{anova}{ace}(object, ...) } \arguments{ - \item{x}{a vector or a factor.} + \item{x}{a vector or a factor; an object of class \code{"ace"} in the + case of \code{print}.} \item{phy}{an object of class \code{"phylo"}.} \item{type}{the variable type; either \code{"continuous"} or \code{"discrete"} (or an abbreviation of these).} \item{method}{a character specifying the method used for - estimation. Three choices are possible: \code{"ML"}, \code{"pic"}, - or \code{"GLS"}.} + estimation. Four choices are possible: \code{"ML"}, \code{"REML"}, + \code{"pic"}, or \code{"GLS"}.} \item{CI}{a logical specifying whether to return the 95\% confidence intervals of the ancestral state estimates (for continuous characters) or the likelihood of the different states (for discrete @@ -37,28 +56,13 @@ ace(x, phy, type = "continuous", method = "ML", CI = TRUE, structure to be used (this also gives the assumed model).} \item{ip}{the initial value(s) used for the ML estimation procedure when \code{type == "discrete"} (possibly recycled).} + \item{digits}{the number of digits to be printed.} \item{object}{an object of class \code{"ace"}.} \item{k}{a numeric value giving the penalty per estimated parameter; the default is \code{k = 2} which is the classical Akaike information criterion.} \item{\dots}{further arguments passed to or from other methods.} } -\description{ - This function estimates ancestral character states, and the associated - uncertainty, for continuous and discrete characters. - - \code{logLik}, \code{deviance}, and \code{AIC} are generic functions - used to extract the log-likelihood, the deviance (-2*logLik), or the - Akaike information criterion of a tree. If no such values are - available, \code{NULL} is returned. - - \code{anova} is another generic function that is used to compare - nested models: the significance of the additional parameter(s) is - tested with likelihood ratio tests. You must ensure that the models - are effectively nested (if they are not, the results will be - meaningless). It is better to list the models from the smallest to the - largest. -} \details{ If \code{type = "continuous"}, the default model is Brownian motion where characters evolve randomly following a random walk. This model @@ -67,7 +71,26 @@ ace(x, phy, type = "continuous", method = "ML", CI = TRUE, generalized least squares (\code{method = "GLS"}, Martins and Hansen 1997, Cunningham et al. 1998). In the latter case, the specification of \code{phy} and \code{model} are actually ignored: it is instead - given through a correlation structure with the option \code{corStruct}. + given through a correlation structure with the option + \code{corStruct}. + + In the default setting (\code{method = "ML"} and \code{model = "BM"}) + the maximum likelihood estimation is done simultaneously on the + ancestral values and the variance of the Brownian motion process; + these estimates are then used to compute the confidence intervals in + the standard way. The REML method first estimates the ancestral value + at the root (aka, the phylogenetic mean), then the variance of the + Brownian motion process is estimated by optimizing the residual + log-likelihood. The ancestral values are finally inferred from the + likelihood function giving these two parameters. If \code{method = + "pic"} or \code{"GLS"}, the confidence intervals are computed using + the expected variances under the model, so they depend only on the + tree. + + It could be shown that, with a continous character, REML results in + unbiased estimates of the variance of the Brownian motion process + while ML gives a downward bias. Therefore the former is recommanded, + even though it is not the default. For discrete characters (\code{type = "discrete"}), only maximum likelihood estimation is available (Pagel 1994). The model is @@ -87,7 +110,7 @@ ace(x, phy, type = "continuous", method = "ML", CI = TRUE, is determined from the data. } \value{ - a list with the following elements: + an object of class \code{"ace"} with the following elements: \item{ace}{if \code{type = "continuous"}, the estimates of the ancestral character values.} @@ -130,8 +153,7 @@ ace(x, phy, type = "continuous", method = "ML", CI = TRUE, Likelihood of ancestor states in adaptive radiation. \emph{Evolution}, \bold{51}, 1699--1711. } -\author{Emmanuel Paradis \email{Emmanuel.Paradis@mpl.ird.fr}, Ben Bolker -\email{bolker@zoo.ufl.edu}} +\author{Emmanuel Paradis, Ben Bolker} \seealso{ \code{\link{corBrownian}}, \code{\link{corGrafen}}, \code{\link{corMartins}}, \code{\link{compar.ou}},