Simulation Function for Group Testing Data
Simulates data in group testing form ready to be fit by gtreg.
sim.gt(x = NULL, gshape = 20, gscale = 2, par, linkf = c("logit", "probit", "cloglog"), sample.size, group.size, sens = 1, spec = 1, sens.ind = NULL, spec.ind = NULL)
x |
a matrix of user-submitted covariates to simulate the data with, defaults to NULL in which case a gamma distribution is used to generate the covariates automatically |
gshape |
shape parameter of gamma distribution, must be non-negative, set to be 20 by default |
gscale |
scale parameter of gamma distribution, must be strictly positive, set to be 2 by default |
par |
the true coefficients in the linear predictor |
sample.size |
sample size of simulated data |
linkf |
a character string specifying one of the three link functions to be used: "logit" (default) or "probit" or "cloglog" |
group.size |
group size in pooling individual samples |
sens |
sensitivity of the group tests, set to be 1 by default. |
spec |
specificity of the group tests, set to be 1 by default. |
sens.ind |
sensitivity of the individual retests, set to be equal to sens if not specified otherwise. |
spec.ind |
specificity of the individual retests, set to be equal to spec if not specified otherwise. |
sim.gt generates group testing data in simple pooling form. The covariates are either specified by the x argument or they are generated from a gamma distribution with a given gshape and gscale. The individual probabilities are calculated from the covariates, the coefficients given in par, and the link function specified through linkf. The true binary individual responses are then simulated from the individual probabilities. The true group responses are found from the individual responses within the groups (i.e., if at least one response is positive, the group is positive; otherwise, the group response is negative). Finally, the observed group responses are simulated using the given sens and spec. Individual retests are simulated from sens.ind and spec.ind for samples in observed positive groups. Note that with a given group.size, the last group may have less individuals.
sim.gt returns a data frame with the following columns:
gres |
the group response |
x |
the covariate |
groupn |
the group number |
ind |
the actual individual response |
retest |
the results of individual retests |
Boan Zhang
set.seed(46) gt.data <- sim.gt(par = c(-12, 0.2), sample.size = 700, group.size = 5) x1 <- sort(runif(100, 0, 30)) x2 <- rgamma(100, shape=17, scale=1.5) gt.data <- sim.gt(x = cbind(x1,x2), par=c(-14, 0.2, 0.3), group.size = 4, sens = 0.98, spec = 0.98)
Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.