Skip to contents

The dose solving \(\mu(\alpha + \beta x) = p\) is \((g_p - \alpha)/\beta\), a RATIO of estimated quantities, whose sampling distribution is not normal. Fieller inverts the test directly. The quantity that decides everything is \(g = t^2 V_{\beta\beta}/\beta^2\): when \(g \ge 1\) the leading coefficient changes sign and the interval is UNBOUNDED. That is not a failure to patch over – if the slope is not distinguishable from zero the data do not bound the median dose, and a delta-method interval returning two tidy finite numbers there is lying.

Usage

morie_effective_dose(
  intercept,
  slope,
  cov,
  level = 0.5,
  alpha = 0.05,
  link = c("probit", "logit"),
  log_scale = TRUE
)

Arguments

intercept, slope

Fitted coefficients.

cov

2x2 covariance matrix.

level

Response level to invert at.

alpha

Two-sided level.

"probit" or "logit".

log_scale

Were the doses logged?

Value

A list with ed, lower, upper, fieller_g, bounded, se_delta, and dose-scale versions when log_scale.

References

Fieller EC (1954) JRSS B 16(2):175-185, doi:10.1111/j.2517-6161.1954.tb00159.x .

Examples

# probit fit on log10 dose; ED50 = -intercept / slope
morie_effective_dose(intercept = -2, slope = 1.5, cov = matrix(c(0.04, -0.01, -0.01, 0.02), 2))[c("ed", "lower", "upper")]
#> $ed
#> [1] 1.333333
#> 
#> $lower
#> [1] 1.06735
#> 
#> $upper
#> [1] 1.658239
#>