R: Partition model.

multiphyDat2pmlPart {phangorn} | R Documentation

## Partition model.

### Description

Model to estimate phylogenies for partitioned data.

### Usage

    multiphyDat2pmlPart(x, rooted = FALSE, ...)

    pmlPart2multiPhylo(x)

    pmlPart(formula, object, control = pml.control(epsilon = 1e-08, maxit = 10,
      trace = 1), model = NULL, rooted = FALSE, ...)

### Arguments

`x` | an object of class `pmlPart`
`rooted` | Are the gene trees rooted (ultrametric) or unrooted.
`...` | Further arguments passed to or from other methods.
`formula` | a formula object (see details).
`object` | an object of class `pml` or a list of objects of class `pml` .
`control` | A list of parameters for controlling the fitting process.
`model` | A vector containing the models containing a model for each partition.

### Details

The `formula` object allows to specify which parameter get optimized. The formula is generally of the form `edge + bf + Q ~ rate + shape + ...{}`, on the left side are the parameters which get optimized over all partitions, on the right the parameter which are optimized specific to each partition. The parameters available are `"nni", "bf", "Q", "inv", "shape", "edge", "rate"`. Each parameters can be used only once in the formula. `"rate"` and `"nni"` are only available for the right side of the formula.

For partitions with different edge weights, but same topology, `pmlPen` can try to find more parsimonious models (see example).

`pmlPart2multiPhylo` is a convenience function to extract the trees out of a `pmlPart` object.

### Value

`kcluster` returns a list with elements

`logLik` | log-likelihood of the fit
`trees` | a list of all trees during the optimization.
`object` | an object of class `"pml"` or `"pmlPart"`

### Author(s)

Klaus Schliep klaus.schliep@gmail.com

### See Also

`pml`,`pmlCluster`,`pmlMix`,`SH.test`

### Examples

    data(yeast)
    dm <- dist.logDet(yeast)
    tree <- NJ(dm)
    fit <- pml(tree,yeast)
    fits <- optim.pml(fit)

    weight=xtabs(~ index+genes,attr(yeast, "index"))[,1:10]

    sp <- pmlPart(edge ~ rate + inv, fits, weight=weight)
    sp

    ## Not run:
    sp2 <- pmlPart(~ edge + inv, fits, weight=weight)
    sp2
    AIC(sp2)

    sp3 <- pmlPen(sp2, lambda = 2)
    AIC(sp3)

    ## End(Not run)

[Package phangorn version 2.3.1 Index]