Why does my log-normal distribution not fit my data?
17 次查看(过去 30 天)
显示 更早的评论
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 个评论
dpb
2018-12-4
Seems reasonable; probably need to see what data are to be able to decipher what actually happened.
采纳的回答
John D'Errico
2018-12-5
编辑:John D'Errico
2018-12-5
Consider thisexample:
X = lognrnd(0,1,[1,1000]);
histogram(X,100,'normalization','probability')
hold on
ezplot(@(x) lognpdf(x,0,1))
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/198280/image.jpeg)
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')
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/198281/image.jpeg)
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 个)
Jeff Miller
2018-12-4
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 个评论
Jeff Miller
2018-12-4
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.
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!