# rTraitMult

From ape v2.7-3
by Emmanuel Paradis

##### Multivariate Character Simulation

This function simulates the evolution of a multivariate set of traits along a phylogeny. The calculation is done recursively from the root.

- Keywords
- datagen

##### Usage

```
rTraitMult(phy, model, p = 1, root.value = rep(0, p), ancestor = FALSE,
asFactor = NULL, trait.labels = paste("x", 1:p, sep = ""), ...)
```

##### Arguments

- phy
- an object of class
`"phylo"`

. - model
- a function specifying the model (see details).
- p
- an integer giving the number of traits.
- root.value
- a numeric vector giving the values at the root.
- ancestor
- a logical value specifying whether to return the values at the nodes as well (by default, only the values at the tips are returned).
- asFactor
- the indices of the traits that are returned as factors (discrete traits).
- trait.labels
- a vector of mode character giving the names of the traits.
- ...
- further arguments passed to
`model`

if it is a function.

##### Details

The model is specified with an Rfunction of the form ```
foo(x,
l)
```

where `x`

is a vector of the traits of the ancestor and
`l`

is the branch length. Other arguments may be added. The
function must return a vector of the of length `p`

.

##### Value

- A data frame with
`p`

columns whose names are given by`trait.labels`

and row names taken from the labels of the tree.

##### See Also

##### Examples

```
## correlated evolution of 2 continuous traits:
mod <- function(x, l) {
y <- numeric(length(x))
y[1] <- rnorm(1, x[1] + 0.5*x[2], 0.1)
y[2] <- rnorm(1, 0.5*x[1] + x[2], 0.1)
y
}
set.seed(11)
tr <- makeNodeLabel(rcoal(20))
x <- rTraitMult(tr, mod, 2, ancestor = TRUE)
op <- par(mfcol = c(2, 1))
plot(x, type = "n")
text(x, labels = rownames(x), cex = 0.7)
oq <- par(mar = c(0, 1, 0, 1), xpd = TRUE)
plot(tr, font = 1, cex = 0.7)
nodelabels(tr$node.label, cex = 0.7, adj = 1)
par(c(op, oq))
```

*Documentation reproduced from package ape, version 2.7-3, License: GPL (>= 2)*

### Community examples

Looks like there are no examples yet.