What is the orthodox precedure of evaluating/determining the type of a distribution? And How to fit it into a normal distribution with skewness and kurtosis?

조회 수: 2(최근 30일)
Xiaoxiao Du
Xiaoxiao Du 2022년 6월 21일
댓글: Jeff Miller 2022년 6월 23일
Hi all,
As illustrated below, I have a distribution (purple) and I want to describe it with a distribution function.
I used 'dfittool' toolbox and below blue and red line are the 'Normal' and 'Sable' distribution fit.However, the log likelihood are not ideal. Thus, I'm curious if there any orthodox way to determine "what distribution is it"?
I'm unsatisfied with the 'Normal' distribution below, which is described by only mu and std. I would like to know if there are some ways to describe it with 4 parameters (mean, standard deviation, skewness, kurtosis). Furthermore, I would like to know if there are some ways/techniques to attain some better fit for the distributions?

답변(2개)

Jeff Miller
Jeff Miller 2022년 6월 22일
Unfortunately, trial-and-error with fitting different distributions is the only way to find out what distribution provides the best description of some data. You may find software that makes the trial-and-error process more convenient, but there is no way to go beyond that.
You might want to look at the Pearson system distributions that are more flexible in allowing different values of skewness and kurtosis. In the normal distribution, of course, those values are fixed.
  댓글 수: 2
Jeff Miller
Jeff Miller 2022년 6월 23일
As Stephen23 said, there isn't a general solution to this problem. This isn't a matlab limitation but a theoretical one: there are an infinite number of possible distribution functions that are arbitrarily close to one another. All you can do is try some specific set of functions and choose the one that provides the best fit (judging by the q-q plot or some other criterion).
Here is some code for Pearson distributions

댓글을 달려면 로그인하십시오.


Stephen23
Stephen23 2022년 6월 22일
편집: Stephen23 2022년 6월 22일
The standard appraoch is to use a quantile-quantile plot:
which you can do in MATLAB using:
You will need to repeat the plot for each distribution that you wish to compare your data against.
Note that there is no general automagical solution to this: consider the distribution of x = 1.

Community Treasure Hunt

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

Start Hunting!

Translated by