How can I fit multiple Gaussians to one data set?
3 views (last 30 days)
Show older comments
I am working with some data showing the number of photons detected in events corresponding to electron release. Each electron produces photons according to a normal distribution. The data has multiple peaks from events involving one, two or three electrons, and possibly more. I want to fit a gaussian curve over each of these peaks individually, so I can integrate and find the probability of an event having a particular number of electrons. I have no idea how to go about this. I've attached a histogram of the data so you can see what I mean.
1 Comment
Answers (1)
Image Analyst
on 24 Nov 2014
It's not so easy. You can look at Gaussian mixture models or mixture distributions http://en.wikipedia.org/wiki/Mixture_distribution
Or you can use an ad hoc method they use in astronomoy. It's called CLEAN and goes something like this:
- Find the highest peak.
- Go out a certain distance, like until it starts to increase again.
- Fit that data to a Gaussian and save this Gaussian's parameters.
- Subtract the fit from the actual data to get "what's left"
- If no peaks taller than some amount, quit. Otherwise repeat step 1.
0 Comments
See Also
Categories
Find more on Particle & Nuclear Physics in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!