Learn R Programming

distr6 (version 1.0.0)

MixtureDistribution: Mixture Distribution Wrapper

Description

Wrapper used to construct a mixture of two or more distributions.

Value

Returns an R6 object of class MixtureDistribution.

Constructor

MixtureDistribution$new(distlist, weights = NULL)

Constructor Arguments

Argument Type Details
distlist list List of distributions.
weights numeric Vector of weights. See Details.

Public Variables

Variable Return
name Name of distribution.
short_name Id of distribution.
description Brief description of distribution.

Public Methods

Accessor Methods Link
wrappedModels(model = NULL) wrappedModels
decorators() decorators
traits() traits
valueSupport() valueSupport
variateForm() variateForm
type() type
properties() properties
support() support
symmetry() symmetry
sup() sup
inf() inf
dmax() dmax
dmin() dmin
skewnessType() skewnessType
kurtosisType() kurtosisType
d/p/q/r Methods Link
pdf(x1, ..., log = FALSE, simplify = TRUE) pdf
cdf(x1, ..., lower.tail = TRUE, log.p = FALSE, simplify = TRUE) cdf
quantile(p, ..., lower.tail = TRUE, log.p = FALSE, simplify = TRUE) quantile.Distribution
rand(n, simplify = TRUE) rand
Statistical Methods Link
prec() prec
stdev() stdev
median() median.Distribution
iqr() iqr
cor() cor
Parameter Methods Link
parameters(id) parameters
getParameterValue(id, error = "warn") getParameterValue
setParameterValue(..., lst = NULL, error = "warn") setParameterValue
Validation Methods Link
liesInSupport(x, all = TRUE, bound = FALSE) liesInSupport
liesInType(x, all = TRUE, bound = FALSE) liesInType
Representation Methods Link
strprint() strprint
print() print
summary(full = T) summary.Distribution
plot() Coming Soon.
qqplot() Coming Soon.

Details

A Mixture Distribution is a weighted combination of two or more distributions such that for pdf/cdfs of n distribution \(f_1,...,f_n\)/\(F_1,...,F_n\) and a given weight associated to each distribution, \(w_1,...,w_n\). The pdf of the mixture distribution \(M(X1,...,XN)\), \(f_M\) is given by $$f_M = \sum_i (f_i)(w_i)$$ and the cdf, F_M is given by $$F_M = \sum_i (F_i)(w_i)$$

If weights are given, they should be provided as a vector of numerics. If they don't sum to one then they are normalised automatically. If NULL, they are taken to be uniform, i.e. for n distributions, \(w_i = 1/n, \ \forall \ i \ \in \ [1,n]\).

See Also

listWrappers

Examples

Run this code
# NOT RUN {
mixture <- MixtureDistribution$new(list(Binomial$new(prob = 0.5, size = 10), Binomial$new()),
                                   weights = c(0.2,0.8))
mixture$pdf(1)
mixture$cdf(1)

# }

Run the code above in your browser using DataLab