| est.transdist.theta.weights {IDSpatialStats} | R Documentation | 
Estimate transmission distance theta values by replication
Description
This function estimates the weight of each theta value by performing a user defined number of replications with the get.transdist.theta function. The weights
of each theta are calculated as the number of simulations in which a case at time t1 and t2 are separated by theta transmission events.
Usage
est.transdist.theta.weights(case.times, gen.t.mean, t.density, t1, n.rep = 100)
Arguments
| case.times | a vector giving the occurrence time for each case | 
| gen.t.mean | the mean generation time of the infecting pathogen | 
| t.density | a vector giving the generation time density of the infecting pathogen | 
| t1 | time step to begin simulation | 
| n.rep | number of replications in the simulation (default = 100) | 
Value
a three-dimensional array containing the mean normalized theta weights estimated across all replications
Author(s)
John Giles, Justin Lessler, and Henrik Salje
References
Salje H, Cummings DAT and Lessler J (2016). “Estimating infectious disease transmission distances using the overall distribution of cases.” Epidemics, 17, pp. 10–18. ISSN 1755-4365, doi: 10.1016/j.epidem.2016.10.001.
See Also
Other transdist: 
est.transdist(),
est.transdist.bootstrap.ci(),
est.transdist.temporal(),
est.transdist.temporal.bootstrap.ci(),
get.transdist.theta()
Examples
set.seed(1)
gen.t.mean <- 7
gen.t.sd <- 2
t1 <- 0
# Normally distributed transmission kernel with mean and standard deviation = 100
dist.func <- alist(n=1, a=1/100, rexp(n, a)) 
# Simulate epidemic
a <- sim.epidemic(R=5,
                  gen.t.mean=gen.t.mean,
                  gen.t.sd=gen.t.sd,
                  min.cases=5,
                  tot.generations=3,
                  trans.kern.func=dist.func)
# Get case times
a <- a[order(a[,3]),]
case.times <- round(a[,3])
unique.times <- unique(case.times)
ntimes <- length(unique.times)
# Generation time distribution
max.t <- round(max(unique.times) - t1) - 1
n.step <- round(max.t/gen.t.mean)
gen <- rep(0, max.t*2)
for (i in 1:n.step){gen <- gen + dnorm(1:(max.t*2), gen.t.mean*i, gen.t.sd*i)}
gen[1] <- 0 # No instantaneous infections
t.density <- gen/sum(gen)
# Estimation of theta weights matrix
b <- est.transdist.theta.weights(case.times=case.times,
                                 n.rep=3, 
                                 gen.t.mean=gen.t.mean, 
                                 t1=t1, 
                                 t.density=t.density)