sim.mp {binGroup} | R Documentation |

## Simulation Function for Group Testing Data with Matrix Pooling Design

### Description

Simulates data in group testing form ready to be fit by `gtreg.mp`.

### Usage

```
sim.mp(x = NULL, gshape = 20, gscale = 2, par,
linkf = c("logit", "probit", "cloglog"),
n.row, n.col, sens = 1, spec = 1,
sens.ind = NULL, spec.ind = NULL)
```

### Arguments

`x` |
a matrix of user-submitted covariates to simulate the data with, defaults to |

`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 |

`linkf` |
a character string specifying one of the three link functions to be used: |

`n.row` |
a vector that specifies the number of rows in each matrix, a scalar if only one matrix is simulated |

`n.col` |
a vector that specifies the number of columns in each matrix, a scalar if only one matrix is simulated |

`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. |

### Details

`sim.mp` generates group testing data in matrix 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 individuals are organized into (by column) one or more matrices specified by `n.row` and `n.col`, and the true group responses are found (i.e., if at least one response is positive, the group is positive; otherwise, the group response is negative). The observed row and column group responses are then simulated using the given `sens` and `spec` values. Individual retests are simulated from `sens.ind` and `spec.ind` for individuals that lie on the intersection of an observed positive row and an observed positive column. In the case where no column (row) tests positive in a matrix, all the individuals in any observed positive rows (columns) will be assigned a simulated retest result. If no column or row is observed positive, `NULL` is returned.

### Value

`sim.mp` returns a list with the components
`dframe`: the data frame that is actually to be fit,
`ind`: the true individual responses presented in matrices and
`prob`: the individual probabilities.

`dframe` is a data frame with columns

`col.resp` |
the column group response |

`row.resp` |
the row group response |

`x` |
the covariate |

`arrayn` |
the array number |

`coln` |
the column group number |

`rown` |
the row group number |

`retest` |
the results of individual retests |

### Author(s)

Boan Zhang

### See Also

`gtreg.mp`

for the corresponding function to fit the model.

### Examples

```
# 5*6 and 4*5 matrix
set.seed(9128)
sa1a<-sim.mp(par=c(-7,0.1), n.row=c(5,4), n.col=c(6,5),
sens=0.95, spec=0.95)
sa1<-sa1a$dframe
```

*binGroup*version 2.2-1 Index]