Estimating the parameter of the Rayleigh distribution by maximum likelihood estimation. Right-censoring is allowed.
rayleigh(lscale = "loge", nrfs = 1/3 + 0.01,
oim.mean = TRUE, zero = NULL)
cens.rayleigh(lscale = "loge", oim = TRUE)
Parameter link function applied to the scale parameter Links
for more choices.
A log link is the default because
Numeric, of length one, with value in
Logical, used only for intercept-only models.
TRUE
means the mean of the OIM elements are used as working weights.
If TRUE
then this argument has top priority for working
out the working weights.
FALSE
means use another algorithm.
Logical.
For censored data only,
TRUE
means the Newton-Raphson algorithm, and
FALSE
means Fisher scoring.
Details at CommonVGAMffArguments
.
An object of class "vglmff"
(see vglmff-class
).
The object is used by modelling functions such as vglm
,
rrvglm
and vgam
.
The theory behind the argument oim
is not fully complete.
The Rayleigh distribution, which is used in physics,
has a probability density function that can be written
The VGAM family function cens.rayleigh
handles right-censored
data (the true value is greater than the observed value). To indicate
which type of censoring, input extra = list(rightcensored = vec2)
where vec2
is a logical vector the same length as the response.
If the component of this list is missing then the logical values are
taken to be FALSE
. The fitted object has this component stored
in the extra
slot.
The VGAM family function rayleigh
handles multiple responses.
Forbes, C., Evans, M., Hastings, N. and Peacock, B. (2011) Statistical Distributions, Hoboken, NJ, USA: John Wiley and Sons, Fourth edition.
Rayleigh
,
genrayleigh
,
riceff
,
maxwell
,
weibullR
,
poisson.points
,
simulate.vlm
.
# NOT RUN {
nn <- 1000; Scale <- exp(2)
rdata <- data.frame(ystar = rrayleigh(nn, scale = Scale))
fit <- vglm(ystar ~ 1, rayleigh, data = rdata, trace = TRUE, crit = "coef")
head(fitted(fit))
with(rdata, mean(ystar))
coef(fit, matrix = TRUE)
Coef(fit)
# Censored data
rdata <- transform(rdata, U = runif(nn, 5, 15))
rdata <- transform(rdata, y = pmin(U, ystar))
# }
# NOT RUN {
par(mfrow = c(1, 2))
hist(with(rdata, ystar)); hist(with(rdata, y))
# }
# NOT RUN {
extra <- with(rdata, list(rightcensored = ystar > U))
fit <- vglm(y ~ 1, cens.rayleigh, data = rdata, trace = TRUE,
extra = extra, crit = "coef")
table(fit@extra$rightcen)
coef(fit, matrix = TRUE)
head(fitted(fit))
# }
Run the code above in your browser using DataLab