Why does my log-normal distribution not fit my data?

24 views (last 30 days)
Hello,
I am fitting some realively simple data with a log normal distribution.
I am then generating a probability distribution from that fit.
Shouldn't this roughly match the intial data?
when I plot it on top of normalized histogram of the data, the shape is appropriate but the scale is about ten-fold lower.
Example below.
parmat = lognfit(data)
pdf = lognpdf(0:1:1000,parmat(1),parmat(2))
figure;hold on
histogram(data,[0:1:1000],'normalization','probability')
plot(0:1:1000,pdf)
In this case shouldn't the probability density function approximate the histrogam, rather than being one tenth or less the values of the histogram probability?
Thanks.
  1 Comment
dpb
dpb on 4 Dec 2018
Seems reasonable; probably need to see what data are to be able to decipher what actually happened.

Sign in to comment.

Accepted Answer

John D'Errico
John D'Errico on 5 Dec 2018
Edited: John D'Errico on 5 Dec 2018
Consider thisexample:
X = lognrnd(0,1,[1,1000]);
histogram(X,100,'normalization','probability')
hold on
ezplot(@(x) lognpdf(x,0,1))
So the two plots seems scaled wrong.
But the histogram normlization chosen was one such that the sum of the bars is 1. Consider the choices given though.
ezplot(@(x) lognpdf(x,0,1))
hold on
histogram(X,100,'normalization','pdf')
You made what may have seemed a reasonable choice in your normailzation, but the wrong one in hindsight. Remember that a PDF does not contain actual probabilities, something that is a source of frequent consternation for some people when someone sees a PDF that returns numbers greater than 1.
  1 Comment
David McVea
David McVea on 5 Dec 2018
that makes sense, thank you.
When I change the normalization to pdf, it matches.

Sign in to comment.

More Answers (1)

Jeff Miller
Jeff Miller on 4 Dec 2018
The probability density function should only approximate the histogram in shape, not in height. Remember, the PDF is defined such that it's total area (integral) is 1, over the whole range of the random variable. The total area under the histogram is much more than that.
  3 Comments
Jeff Miller
Jeff Miller on 4 Dec 2018
Yes, I think so. According to the docs, that normalization produces a sum of the bar heights equal to 1. But the integral depends on the range along the horizontal axis as well as on the bar heights.
David McVea
David McVea on 5 Dec 2018
OK, thanks.
Do you have advice on how a fitted distribution, and the underlying data, should be overlayed to allow comparison?
David

Sign in to comment.

Products


Release

R2015a

Community Treasure Hunt

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

Start Hunting!