Creating a Normal Probability Curve
4 views (last 30 days)
Show older comments
Georgios Vamvakopoulos
on 11 Aug 2016
Commented: Georgios Vamvakopoulos
on 11 Aug 2016
Hello,
I have a problem. I want to create a probability density function for a distribution. Initialy the only known values were the maximum and the minimum 95th percentile of the distribution. With maximum at 1.5 and minimum 0.66.
Using these values I calculated the mu = 1.08 and sigma = 0.24, based on 0.66 = mu - 2*sigma and 1.5 = mu +2*sigma But the problem is that whenever I insert the code in Matlab the probability density function graph is going over 1
This is my code
% Drag Coefficient
mu = 1.08;
sigma = 0.24;
x = (mu - 5 * sigma) : (sigma / 100) : (mu + 5 * sigma);
pdfNormal = normpdf(x, mu, sigma);
string = 'the maximal pdfNormal is';
string = sprintf('%s :%d', string,max(pdfNormal));
disp(string)
plot(x, pdfNormal);
Thank you in advance for your reply :)
3 Comments
Accepted Answer
the cyclist
on 11 Aug 2016
Edited: the cyclist
on 11 Aug 2016
% Upper and lower limit of confidence interval defined by user
ci_hi = 1.5;
ci_lo = 0.66;
% Center of confidence interval
ci_center = (ci_hi + ci_lo)/2
% Function that needs to be minimized to meet the above criteria
f = @(sigma) (norminv(0.025,ci_center,sigma)-0.66).^2 + (norminv(0.975,ci_center,sigma)-1.5).^2;
% Find the minimum
[sigma_min,f_min] = fminsearch(f,1);
% Choose some values of x to illustrate
x = [-1 0 0.66 1.5 2 3]
x_pdf = normpdf(x,ci_center,sigma_min)
x_cdf = normcdf(x,ci_center,sigma_min)
% Plot a range
figure
x_range = -1 : 0.01 : 3;
subplot(2,1,1), plot(x_range,normpdf(x_range,ci_center,sigma_min))
subplot(2,1,2), plot(x_range,normcdf(x_range,ci_center,sigma_min))
Notice that the pdf is sometimes greater than 1, which I'm guessing you believe is a problem. But the pdf is not the probability. (This is a very common misconception.)
It is the integral of pdf(x) * dx that gives the probability of an event in the range dx. So, pdf(x) can be greater than one, over sufficiently small ranges of x.
More Answers (0)
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!