| leipnik {VGAM} | R Documentation | 
Leipnik Regression Family Function
Description
Estimates the two parameters of a (transformed) Leipnik distribution by maximum likelihood estimation.
Usage
leipnik(lmu = "logitlink", llambda = logofflink(offset = 1),
        imu = NULL, ilambda = NULL)
Arguments
lmu, llambda | 
 Link function for the   | 
imu, ilambda | 
 Numeric. Optional initial values for   | 
Details
The (transformed) Leipnik distribution has density function
f(y;\mu,\lambda) = \frac{ \{ y(1-y) \}^{-\frac12}}{
  \mbox{Beta}( \frac{\lambda+1}{2}, \frac12 )}
  \left[ 1 +  \frac{(y-\mu)^2 }{y(1-y)}
  \right]^{ -\frac{\lambda}{2}}
where 0 < y < 1 and \lambda > -1.
The mean is \mu (returned as the fitted values)
and the variance is 1/\lambda.
Jorgensen (1997) calls the above the transformed
Leipnik distribution, and if y = (x+1)/2 and \mu =
  (\theta+1)/2, then the distribution of X
as a function of x and \theta is known as the
the (untransformed) Leipnik distribution.  Here, both x
and \theta are in (-1, 1).
Value
An object of class "vglmff"
(see vglmff-class).
The object is used by modelling functions
such as vglm,
rrvglm
and vgam.
Note
Convergence may be slow or fail.
Until better initial value estimates are forthcoming try
assigning the argument ilambda some numerical value if it
fails to converge.  Currently, Newton-Raphson is implemented,
not Fisher scoring.  Currently, this family function probably
only really works for intercept-only models, i.e., y ~
  1 in the formula.
Author(s)
T. W. Yee
References
Jorgensen, B. (1997). The Theory of Dispersion Models. London: Chapman & Hall
Johnson, N. L. and Kotz, S. and Balakrishnan, N. (1995). Continuous Univariate Distributions, 2nd edition, Volume 2, New York: Wiley. (pages 612–617).
See Also
Examples
ldata <- data.frame(y = rnorm(2000, 0.5, 0.1))  # Improper data
fit <- vglm(y ~ 1, leipnik(ilambda = 1), ldata, trace = TRUE)
head(fitted(fit))
with(ldata, mean(y))
summary(fit)
coef(fit, matrix = TRUE)
Coef(fit)
sum(weights(fit))  # Sum of the prior weights
sum(weights(fit, type = "work"))  # Sum of the working weights