Description Usage Arguments Value Examples
Estimates the log-likelihood for the given parameter values using the Time Machine.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | tm(transitions, pi=NULL, population, n, mu, samples, threads=NULL)
## S3 method for class 'tm'
density(x, ...)
## S3 method for class 'tm'
mean(x, ...)
## S3 method for class 'tm'
print(x, ...)
## S3 method for class 'tm'
quantile(x, ...)
## S3 method for class 'tm'
summary(object, ..., digits=max(3, getOption("digits")-3))
|
transitions |
Transition matrix between types |
pi |
Stationary distribution associated with the transition matrix, or
|
population |
Vector representing the initial population |
n |
Target population size |
mu |
Mutation rate |
samples |
Number of samples to simulate |
threads |
Number of threads used for simulations, or |
x,object |
An object of class |
... |
Further arguments passed to the corresponding generic function |
digits |
Minimum number of significant digits for number formatting |
An object of class tm
representing the result of the simulations.
population |
Vector representing the initial population |
n |
Target population size |
mu |
Mutation rate |
logliks |
Vector of simulated log-likelihoods |
corrections |
Vector of correction terms |
coalescent.events |
Matrix of column vectors (one per simulation) containing SENs when coalescent events were simulated |
final.populations |
Matrix of columns vectors (one per simulation) containing final population sizes for each type |
simulation.times |
Computation time for each simulation (in seconds) |
total.time |
Total computation time (in seconds) |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 | # Load example dataset
data(pdm)
transitions <- full.transitions(pdm$unitary.transitions, pdm$loci)
pi <- stationary.dist(transitions)
n <- 10
samples <- 10
# Estimate log-likelihood for a fixed value of the mutation rate
mu <- 1
est.res <- tm(transitions, pi, pdm$population, n, mu, samples)
print(est.res)
# Estimate log-likelihood for different values of the mutation rate
mus <- seq(0.1, 10, 0.1)
estimates <- sapply(mus, function(mu) {
tm(transitions, pi, pdm$population, n, mu, samples)
}, simplify=FALSE)
# Compute mean log-likelihood for each value of the mutation rate mu
mean.logliks <- do.call(rbind, lapply(estimates, function(x) {
c(x$mu, mean(x))
}))
# Plot mean log-likelihoods
plot(mean.logliks, pch=20, xlab=expression(mu), ylab="Mean log-likelihood",
main=paste("Mean log-likelihoods - Sample size:", samples))
# Estimate log-likelihood for different target population sizes and fixed
# mutation rate
ns <- 2:50
mu <- 1
estimates <- sapply(ns, function(n) {
tm(transitions, pi, pdm$population, n, mu, samples)
}, simplify=FALSE)
# Compute mean correction term/log-likelihood ratios for each target population size
mean.corrections <- do.call(rbind, lapply(estimates, function(x) {
c(x$n, mean(x$correction / x$logliks))
}))
# Plot mean correction term/log-likelihood ratios
plot(mean.corrections[,1], rev(mean.corrections[,2]), pch=20,
xlab="Target population size", ylab="Mean correction term/log-likelihood",
axes=FALSE)
axis(1, at=mean.corrections[,1], labels=rev(mean.corrections[,1]))
axis(2)
|
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.