Let's assume we're having a linear combination of two normal distributions. I think one would call the result a multimodal distribution.
import numpy as np
import matplotlib.pyplot as plt
from scipy.stats import norm
ls = np.linspace(0, 60, 1000)
distribution = norm.pdf(ls, 0, 5) + norm.pdf(ls, 20, 10)
distribution = (distribution * 1000).astype(int)
distribution = distribution/distribution.sum()
plt.plot(ls, distribution)
As you can see, we are having a linear combination of two normal distributions having parameters (mu1 = 0, s1 = 5)
and (mu2 = 20, s2 = 10)
. But of course, we usually do not know these parameters beforehand.
I would like to know how I can estimate or fit those parameters (mus and sigmas). I am confident there are methods that would allow to do this but I couldn't find any yet.