hadamard(x)
fhm(v)
h2st(obj, eps=0.001)
h4st(obj, levels = c("a","c","g","t"))
hadamard
returns a Hadamard matrix. fhm
returns the
fast Hadamard multiplication.
h2st
and h4st
perform Hadamard conjugation
for 2-state (binary, RY-coded) or 4-state (DNA/RNA) data.
write.nexus.splits
writes splits returned from h2st
or
distanceHadamard
to a nexus file, which can be processed by
Spectronet or Splitstree.
Hendy, M. D. and Penny, D. (1993). Spectral Analysis of Phylogenetic Data. Journal of Classification, 10, 5--24.
Hendy, M. D. (2005). Hadamard conjugation: an analytical tool for phylogenetics. In O. Gascuel, editor, Mathematics of evolution and phylogeny, Oxford University Press, Oxford
Waddell P. J. (1995). Statistical methods of phylogenetic analysis: Including hadamard conjugation, LogDet transforms, and maximum likelihood. PhD thesis.
distanceHadamard
, lento
, plot.networx
H <- hadamard(3)
v <- 1:8
H
fhm(v)
data(yeast)
# RY-coding
dat_ry <- acgt2ry(yeast)
fit2 <- h2st(dat_ry)
lento(fit2)
# write.nexus.splits(fit2, file = "test.nxs")
# read this file into Spectronet or Splitstree to show the network
## Not run:
# dat = as.character(yeast)
# dat4 = phyDat(dat, type="USER", levels=c("a","c", "g", "t"), ambiguity=NULL)
# fit4 = h4st(dat4)
#
# par(mfrow=c(3,1))
# lento(fit4[[1]], main="Transversion")
# lento(fit4[[2]], main="Transition 1")
# lento(fit4[[3]], main="Transition 2")
# ## End(Not run)
Run the code above in your browser using DataLab