Measurement error distributions
Truncated Normal and Uniform distributions, where the response is also subject to a Normally distributed measurement error.
1 2 3 4 5 6 7 8 9 10 11 12 13
dmenorm(x, mean=0, sd=1, lower=-Inf, upper=Inf, sderr=0, meanerr=0, log = FALSE) pmenorm(q, mean=0, sd=1, lower=-Inf, upper=Inf, sderr=0, meanerr=0, lower.tail = TRUE, log.p = FALSE) qmenorm(p, mean=0, sd=1, lower=-Inf, upper=Inf, sderr=0, meanerr=0, lower.tail = TRUE, log.p = FALSE) rmenorm(n, mean=0, sd=1, lower=-Inf, upper=Inf, sderr=0, meanerr=0) dmeunif(x, lower=0, upper=1, sderr=0, meanerr=0, log = FALSE) pmeunif(q, lower=0, upper=1, sderr=0, meanerr=0, lower.tail = TRUE, log.p = FALSE) qmeunif(p, lower=0, upper=1, sderr=0, meanerr=0, lower.tail = TRUE, log.p = FALSE) rmeunif(n, lower=0, upper=1, sderr=0, meanerr=0)
vector of quantiles.
vector of probabilities.
number of observations. If
vector of means.
vector of standard deviations.
lower truncation point.
upper truncation point.
Standard deviation of measurement error distribution.
Optional shift for the measurement error distribution.
logical; if TRUE, probabilities p are given as log(p), or log density is returned.
logical; if TRUE (default), probabilities are P[X <= x], otherwise, P[X > x].
The normal distribution with measurement error has density
(Phi(upper, mu2, sigma3) - Phi(lower, mu2, sigma3)) / (Phi(upper, mean, sd) - Phi(lower, mean, sd)) * phi(x, mean + meanerr, sigma2)
sigma2*sigma2 = sd*sd + sderr*sderr,
sigma3 = sd*sderr / sigma2,
mu2 = (x - meanerr)*sd*sd + mean*sderr*sderr,
mean is the mean of the original Normal distribution before
sd is the corresponding standard deviation,
u is the upper truncation point,
l is the lower truncation point,
sderr is the standard deviation of the additional measurement error,
meanerr is the mean of the measurement error (usually 0).
phi(x) is the density of the corresponding normal distribution, and
Phi(x) is the distribution function of the corresponding normal distribution.
The uniform distribution with measurement error has density
(Phi(x, meanerr+l, sderr) - Phi(x, meanerr+u, sderr)) / (upper - lower)
These are calculated from the original truncated Normal or Uniform density functions f(. | mu, sd) as
integral f(y | mu, sd, l, u) phi(x, y + meanerr, sderr) dy
meanerr are not specified they assume the
default values of 0, representing no measurement error variance, and no
constant shift in the measurement error, respectively.
Therefore, for example with no other arguments,
simply equivalent to
dtnorm(x), which in turn is
These distributions were used by Satten and Longini (1996) for CD4 cell counts conditionally on hidden Markov states of HIV infection, and later by Jackson and Sharples (2002) for FEV1 measurements conditionally on states of chronic lung transplant rejection.
These distribution functions are just provided for convenience, and are not
optimised for numerical accuracy or speed. To fit a hidden Markov model with these response distributions, use a
hmmMEUnif constructor. See
hmm-dists help page for further details.
dmeunif give the density,
pmeunif give the distribution
qmeunif give the quantile
rmeunif generate random
deviates, for the Normal and Uniform versions respectively.
C. H. Jackson firstname.lastname@example.org
Satten, G.A. and Longini, I.M. Markov chains with measurement error: estimating the 'true' course of a marker of the progression of human immunodeficiency virus disease (with discussion) Applied Statistics 45(3): 275-309 (1996)
Jackson, C.H. and Sharples, L.D. Hidden Markov models for the onset and progression of bronchiolitis obliterans syndrome in lung transplant recipients Statistics in Medicine, 21(1): 113–128 (2002).
1 2 3 4 5 6
## what does the distribution look like? x <- seq(50, 90, by=1) plot(x, dnorm(x, 70, 10), type="l", ylim=c(0,0.06)) ## standard Normal lines(x, dtnorm(x, 70, 10, 60, 80), type="l") ## truncated Normal ## truncated Normal with small measurement error lines(x, dmenorm(x, 70, 10, 60, 80, sderr=3), type="l")
Want to suggest features or report bugs for rdrr.io? Use the GitHub issue tracker.