View source: R/family.actuary.R
perks | R Documentation |
Maximum likelihood estimation of the 2-parameter Perks distribution.
perks(lscale = "loglink", lshape = "loglink",
iscale = NULL, ishape = NULL,
gscale = exp(-5:5), gshape = exp(-5:5),
nsimEIM = 500, oim.mean = FALSE, zero = NULL,
nowarning = FALSE)
nowarning |
Logical. Suppress a warning? Ignored for VGAM 0.9-7 and higher. |
lscale , lshape |
Parameter link functions applied to the
shape parameter |
iscale , ishape |
Optional initial values.
A |
gscale , gshape |
See |
nsimEIM , zero |
See |
oim.mean |
To be currently ignored. |
The Perks distribution has cumulative distribution function
F(y; \alpha, \beta) =
1 -
\left\{
\frac{1 + \alpha}{1 + \alpha e^{\beta y}}
\right\}^{1 / \beta}
which leads to a probability density function
f(y; \alpha, \beta) =
\left[ 1 + \alpha \right]^{1 / \beta}
\alpha e^{\beta y} / (1 + \alpha e^{\beta y})^{1 + 1 / \beta}
for \alpha > 0
,
\beta > 0
,
y > 0
.
Here, \beta
is called the scale parameter scale
,
and \alpha
is called a shape parameter.
The moments for this distribution do
not appear to be available in closed form.
Simulated Fisher scoring is used and multiple responses are handled.
An object of class "vglmff"
(see vglmff-class
).
The object is used by modelling functions such as
vglm
, and vgam
.
A lot of care is needed because
this is a rather difficult distribution for parameter estimation.
If the self-starting initial values fail then try experimenting
with the initial value arguments, especially iscale
.
Successful convergence depends on having very good initial values.
Also, monitor convergence by setting trace = TRUE
.
T. W. Yee
Perks, W. (1932). On some experiments in the graduation of mortality statistics. Journal of the Institute of Actuaries, 63, 12–40.
Richards, S. J. (2012). A handbook of parametric survival models for actuarial use. Scandinavian Actuarial Journal. 1–25.
dperks
,
simulate.vlm
.
## Not run: set.seed(123)
pdata <- data.frame(x2 = runif(nn <- 1000)) # x2 unused
pdata <- transform(pdata, eta1 = -1,
ceta1 = 1)
pdata <- transform(pdata, shape1 = exp(eta1),
scale1 = exp(ceta1))
pdata <- transform(pdata, y1 = rperks(nn, sh = shape1, sc = scale1))
fit1 <- vglm(y1 ~ 1, perks, data = pdata, trace = TRUE)
coef(fit1, matrix = TRUE)
summary(fit1)
## End(Not run)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.