Skip to contents

write.ancestral allows to export ancestral reconstructions. It writes out the tree, a tab delimited text file with the probabilities and the alignment. read.ancestral tries to read in these files. ancestral generates an object of class ancestral.

Usage

write.ancestral(x, file = "ancestral")

ancestral(tree, align, prob)

# S3 method for ancestral
print(x, ...)

Arguments

x

an object of class ancestral.

file

a file name. File endings are added.

tree

an object of class phylo.

align

an object of class phyDat.

prob

an data.frame containing a matrix of posterior probabilities for each state and site.

...

Further arguments passed to or from other methods.

Value

write.ancestral returns the input x invisibly.

Details

This allows also to read in reconstruction made by iqtree to use the plotting capabilities of R.

Examples

data(Laurasiatherian)
fit <- pml_bb(Laurasiatherian[,1:100], "JC", rearrangement = "none")
#> optimize edge weights:  -2135.629 --> -2126.584 
#> optimize edge weights:  -2126.584 --> -2126.584 
#> optimize edge weights:  -2126.584 --> -2126.584 
anc_ml <- ancestral.pml(fit)
write.ancestral(anc_ml)
# Can be also results from iqtree
align <- read.phyDat("ancestral_align.fasta")
tree <- read.tree("ancestral_tree.nwk")
df <- read.table("ancestral.state", header=TRUE)
anc_ml_disc <- ancestral(tree, align, df)
plotAnc(anc_ml_disc, 20)

unlink(c("ancestral_align.fasta", "ancestral_tree.nwk", "ancestral.state"))