The GDF (gamlss2 Distribution Family) is a unified class with corresponding methods that represent all distributional families supported by the gamlss2 package. It enables seamless integration with the distributions3 workflow and provides a consistent interface for model fitting and distributional computations.
Usage
GDF(family, parameters)
Arguments
family
character. Name of a gamlss2.family or a family provided by the gamlss.dist package, e.g, NO or BI for the normal or binomial distribution, respectively.
parameters
numeric, matrix, list or data frame, see the examples.
Details
The S3 class GDF is a slightly more general implementation of the S3 class GAMLSS tailored for gamlss2. For details please see the documentation of GAMLSS
Value
A GDF object, inheriting from distribution.
References
Zeileis A, Lang MN, Hayes A (2022). “distributions3: From Basic Probability to Probabilistic Regression.” Presented at useR! 2022 - The R User Conference. Slides, video, vignette, code at https://www.zeileis.org/news/user2022/.
See Also
gamlss2.family
Examples
library("gamlss2")## package and random seedlibrary("distributions3")set.seed(6020)## one normal distributionX <-GDF("NO", c(mu =1, sigma =2))X
[1] "GDF NO(mu = 1, sigma = 2)"
## two normal distributionsX <-GDF("NO", cbind(c(1, 1.5), c(0.6, 1.2)))X
## see ?gamlss.dist::GAMLSS for the remainder of this example## example using gamlss2m <-gamlss2(Ozone ~s(Temp) | ., data = airquality, family = GA)
GAMLSS-RS iteration 1: Global Deviance = 930.1628 eps = 0.154681
GAMLSS-RS iteration 2: Global Deviance = 925.1362 eps = 0.005403
GAMLSS-RS iteration 3: Global Deviance = 924.8334 eps = 0.000327
GAMLSS-RS iteration 4: Global Deviance = 924.7909 eps = 0.000045
GAMLSS-RS iteration 5: Global Deviance = 924.7566 eps = 0.000037
GAMLSS-RS iteration 6: Global Deviance = 924.7285 eps = 0.000030
GAMLSS-RS iteration 7: Global Deviance = 924.7051 eps = 0.000025
GAMLSS-RS iteration 8: Global Deviance = 924.6855 eps = 0.000021
GAMLSS-RS iteration 9: Global Deviance = 924.6689 eps = 0.000017
GAMLSS-RS iteration 10: Global Deviance = 924.6549 eps = 0.000015
GAMLSS-RS iteration 11: Global Deviance = 924.6428 eps = 0.000013
GAMLSS-RS iteration 12: Global Deviance = 924.6325 eps = 0.000011
GAMLSS-RS iteration 13: Global Deviance = 924.6236 eps = 0.000009
## extract, also works with newdatad <-data.frame("mean"=mean(m),"median"=median(m),"q95"=quantile(m, probs =0.95),"variance"=variance(m),"pdf"=pdf(m),"cdf"=cdf(m))print(head(d))