Solved – Skewness of a mixture density

gaussian mixture distributionskewness

I am fitting a gaussian mixture to financial data. My mixture density is given by:

$f(l)=πϕ(l;μ_1,σ^2_1)+(1−π)ϕ(l;μ_2,σ_2^2)$

I calculated the skewness of the data already. Now, I want to look at the skewness of the fitted gaussian mixture. Since I used ML (EM algorithm) and not method of moments, the moments will not be the same. I know this. But I don't know how to calculate the skewness of the mixed gaussian? I want to have a theoretical derived formula, so I mean, I don't want to calculate this empirical by taking the fitted values and do e.g. skew(…) in R. I will do this to control myself, but first I want to have the theoretical formula for it. I could not find it (I googled for skewness mixture density and so.)

I know that the the skewness is given by

$ \gamma_1 = \operatorname{E}\Big[\big(\tfrac{X-\mu}{\sigma}\big)^{\!3}\, \Big] = \frac{\mu_3}{\sigma^3} = \frac{\operatorname{E}\big[(X-\mu)^3\big]}{\ \ \ ( \operatorname{E}\big[ (X-\mu)^2 \big] )^{3/2}} $

So what is the Skewness of a mixture gaussian? How can I derive it? A mathematical derivation would be great. I have estimated both densities and I have the estimates for μ and σ. I want a formula in what I can insert those values to get the skewness of the mixed density. Then I will control it empirically with skew(…) in R.

I know this for the kurtosis:
kurtosis
and I want to have this for skewness and – this would be great- a derivation of it?

Best Answer

Skewness is a vague concept which allows its formalisation in several ways. The most popular measure of skewness is the one you mention, which was proposed more than 100 years ago. However, there are better (more interpretable) measures nowdays.

It has been largely discussed the validity of using a measure of skewness in multimodal distributions, since its interpretation becomes unclear. This is the case of finite mixtures. If your mixture looks (or is) unimodal, then you can use this value to understand a bit how asymmetric it is.

In R, this quantity is implemented in the library moments, in the command skewness().

The moments of a mixture $X$, with density $g=\sum_{j=1}^n \pi_j f_j$ can be calculated as $E[X^k] = \sum_{j=1}^n \pi_j\int x^k f_j(x)dx$.

A numerical solution in R.

# Sampling from a 2-gaussian mixture
gaussmix <- function(n,m1,m2,s1,s2,alpha) {
    I <- runif(n)<alpha
    rnorm(n,mean=ifelse(I,m1,m2),sd=ifelse(I,s1,s2))
}

# A simulated sample
samp <- gaussmix(100000,0,0,1,1,0.5)

library(moments)
# Approximated kurtosis and skeweness using the simulated sample
skewness(samp)
kurtosis(samp)