paleodiv function

Paleodiversity through time

Paleodiversity through time

Calculates paleodiversity through time from shift.estimates output with the deterministic approach.

paleodiv(phylo, data, sampling.fractions, shift.res, backbone.option = "crown.shift", combi = 1, time.interval = 1, split.div = F)

Arguments

  • phylo: an object of type 'phylo' (see ape documentation)

  • data: a data.frame containing a database of monophyletic groups for which potential shifts can be investigated. This database should be based on taxonomy, ecology or traits and contain a column named "Species" with species name as in phylo.

  • sampling.fractions: the output resulting from get.sampling.fractions.

  • shift.res: the output resulting from shift.estimates.

  • backbone.option: type of the backbone analysis:

    • "stem.shift": paleodiversity dynamics are calculated from the stem age for subclades.
    • "crown.shift": paleodiversity dynamics are calculated from the crown age for subclades.
  • combi: numeric. The combination of shifts defined by its rank in the global comparison.

  • time.interval: numeric. Define the time interval (in million years) at which paleodiversity values are calculated. Default is 1 for a value at each million year.

  • split.div: bolean. Specifies if paleodiversity should be plitted by parts of the selected combination (TRUE) or not.

Returns

If split.div = FALSE, paleodiversity dynamics are returned in a matrix with as many rows as parts in the selected combination and as many column as million years from the root to the present. If spit.div = TRUE, global paleodiversity dynamic is returned as a vector with a value per million year.

References

Mazet, N., Morlon, H., Fabre, P., Condamine, F.L., (2023). Estimating clade‐specific diversification rates and palaeodiversity dynamics from reconstructed phylogenies. Methods in Ecology and in Evolution 14, 2575–2591. https://doi.org/10.1111/2041-210X.14195

Author(s)

Nathan Mazet

See Also

shift.estimates, apply_prob_dtt

Examples

# loading data data("Cetacea") data("taxo_cetacea") data("shifts_cetacea") # no shifts tested at genus level taxo_cetacea_no_genus <- taxo_cetacea[names(taxo_cetacea) != "Genus"] f_cetacea <- get.sampling.fractions(phylo = Cetacea, lad = FALSE, data = taxo_cetacea_no_genus, plot = TRUE, cex = 0.3) # use of paleodiv paleodiversity <- paleodiv(phylo = Cetacea, data = taxo_cetacea_no_genus, sampling.fractions = f_cetacea, shift.res = shifts_cetacea, combi = 1, split.div = FALSE)