dnorm_mix: Normal Mixture Density

View source: R/dnorm_mix.R

Density Normal MixtureR Documentation

Normal Mixture Density

Description

Gives the density value of a univariate Normal Mixture.

Usage

dnorm_mix(x, pi, mean, sd, log = FALSE)

Arguments

x

value or vector of values, to apply in the mixture probability density function.

pi

vector of mixture weights.

mean

vector of mixture means.

sd

vector of mixture standard deviations.

log

logical; if TRUE, probabilities p are given as log(p).

Details

Each component of the mixture has density

f_j(x) = 1/(√(2 * π) * σ_j) * exp(-(x - μ_j)/(2 * σ_j^(2))

where μ_j is the mean of the jth component and σ_j is the standard deviation of the jth component. j = 1, 2, ..., g.

Author(s)

CASTRO, M. O.; MONTALVO, G. S. A.

Examples

f <- function(x){dnorm_mix(x, pi = c(0.5, 0.5), mean = c(4, 11), sd = c(2, 2))}
## Plot using graphics package
require(graphics)
curve(f, 0, 15)

require(ggplot2)
## Plot using ggplot2 package
ggplot(data.frame(x=c(0, 15)), aes(x)) +
  stat_function(fun=f, size = 1L, colour = "#0c4c8a") +
  theme_minimal()

## Integrate
integrate(f, "-Inf", "Inf")$value

matheuscastro43/finiteMix documentation built on March 30, 2022, 12:49 p.m.