how I can use gaussian mixture model to calculate a statistical value

5 views (last 30 days)
Hello,
I have a set of spacial point, i.e. coordinate (x,y) of each point. I want to use the gaussian mixture model. But, how I can calculate one or several statistical values of these point?

Answers (1)

Bruno Pop-Stefanov
Bruno Pop-Stefanov on 22 Nov 2013
Edited: Brewster on 22 Nov 2013
MATLAB implements the Expectation-Maximization algorithm to fit a Gaussian mixture to some data. Use the gmdistribution.fit function from the gmdistribution class on your input data. There is a detailed example showing you the steps here. You can then have access to the means and covariances of each distribution in the mixture. Does that answer your question?
  4 Comments
ZhG
ZhG on 22 Nov 2013
And is there any bivariate gaussian model in Matlab? Thanks again.
Bruno Pop-Stefanov
Bruno Pop-Stefanov on 22 Nov 2013
You have to specify the number of Gaussian models in your mixture; that's the parameter k.
X represents the data you would like a Gaussian mixture to fit to. If you have 2D points, then X is a list a (x,y) coordinates, i.e. a N-by-2 matrix. If your X is a vector, then your data is 1-dimensional.
The dimensions of the Gaussian distributions in the mixture are deduced from the dimensions of your input data X. For example, using 2D data, each point has 2 dimensions and the Gaussians in the mixture will have 2 dimensions as well.

Sign in to comment.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!