Become an expert in R — Interactive courses, Cheat Sheets, certificates and more!
Get Started for Free

cardioid

Cardioid Distribution Family Function


Description

Estimates the two parameters of the cardioid distribution by maximum likelihood estimation.

Usage

cardioid(lmu = extlogitlink(min = 0, max = 2*pi),
         lrho = extlogitlink(min = -0.5, max = 0.5),
         imu = NULL, irho = 0.3, nsimEIM = 100, zero = NULL)

Arguments

lmu, lrho

Parameter link functions applied to the mu and rho parameters, respectively. See Links for more choices.

imu, irho

Initial values. A NULL means an initial value is chosen internally. See CommonVGAMffArguments for more information.

nsimEIM, zero

See CommonVGAMffArguments for more information.

Details

The two-parameter cardioid distribution has a density that can be written as

f(y;mu,rho) = (1 + 2*rho*cos(y-mu)) / (2*pi)

where 0 < y < 2*pi, 0 < mu < 2*pi, and -0.5 < rho < 0.5 is the concentration parameter. The default link functions enforce the range constraints of the parameters.

For positive ρ the distribution is unimodal and symmetric about mu. The mean of Y (which make up the fitted values) is pi + (rho/pi) ((2*pi-mu)*sin(2*pi-mu) + cos(2*pi-mu) - mu*sin(mu) - cos(mu)).

Value

An object of class "vglmff" (see vglmff-class). The object is used by modelling functions such as vglm, rrvglm and vgam.

Warning

Numerically, this distribution can be difficult to fit because of a log-likelihood having multiple maximums. The user is therefore encouraged to try different starting values, i.e., make use of imu and irho.

Note

Fisher scoring using simulation is used.

Author(s)

T. W. Yee

References

Jammalamadaka, S. R. and SenGupta, A. (2001). Topics in Circular Statistics, Singapore: World Scientific.

See Also

CircStats and circular currently have a lot more R functions for circular data than the VGAM package.

Examples

## Not run: 
cdata <- data.frame(y = rcard(n = 1000, mu = 4, rho = 0.45))
fit <- vglm(y ~ 1, cardioid, data = cdata, trace = TRUE)
coef(fit, matrix=TRUE)
Coef(fit)
c(with(cdata, mean(y)), head(fitted(fit), 1))
summary(fit)

## End(Not run)

VGAM

Vector Generalized Linear and Additive Models

v1.1-5
GPL-3
Authors
Thomas Yee [aut, cre], Cleve Moler [ctb] (author of several LINPACK routines)
Initial release
2021-01-13

We don't support your browser anymore

Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.