drc (version 3.0-1)

rdrm: Simulating a dose-response curve

Description

Simulation of a dose-response curve with user-specified dose values and error distribution.

Usage

rdrm(nosim, fct, mpar, xerror, xpar = 1, yerror = "rnorm", ypar = c(0, 1), onlyY = FALSE)

Arguments

nosim
numeric. The number of simulated curves to be returned.
fct
list. Any built-in function in the package drc or a list with similar components.
mpar
numeric. The model parameters to be supplied to fct.
xerror
numeric or character. The distribution for the dose values.
xpar
numeric vector supplying the parameter values defining the distribution for the dose values. If xerror is a distribution then remember that the number of dose values also is part of this argument (the first argument).
yerror
numeric or character. The error distribution for the response values.
ypar
numeric vector supplying the parameter values defining the error distribution for the response values.
onlyY
logical. If TRUE then only the response values are returned (useful in simulations). Otherwise both dose values and response values (and for binomial data also the weights) are returned.

Value

A list with up to 3 components (depending on the value of the onlyY argument).

Details

The distribution for the dose values can either be a fixed set of dose values (a numeric vector) used repeatedly for creating all curves or be a distribution specified as a character string resulting in varying dose values from curve to curve. The error distribution for the response values can be any continuous distribution like rnorm or rgamma. Alternatively it can be the binomial distribution rbinom.

References

~put references to the literature/web site here ~

Examples

Run this code

## Simulating normally distributed dose-response data

## Model fit to simulate from
ryegrass.m1 <- drm(rootl~conc, data = ryegrass, fct = LL.4())

## 10 random dose-response curves based on the model fit
sim10a <- rdrm(10, LL.4(), coef(ryegrass.m1), xerror = ryegrass$conc)
sim10a


## Simulating binomial dose-response data

## Model fit to simulate from
deguelin.m1 <- drm(r/n~dose, weights=n, data=deguelin, fct=LL.2(), type="binomial")

## 10 random dose-response curves
sim10b <- rdrm(10, LL.2(), coef(deguelin.m1), deguelin$dose, yerror="rbinom", ypar=deguelin$n)
sim10b

Run the code above in your browser using DataLab