Right-truncating a lognormal distribution

1 view (last 30 days)
Hello,
I would like to compute the probability that P(z<a) where
z=exp(x*beta+e) and e is distributed iid N(0,sigma^2).
I would like to evaluate the CDF of z, i.e.,
P(e< log(a)-x*beta),
for various values of x*beta. However, I know that z cannot take a value greater than a certain number, b. How can I obtain the truncated distribution to evaluate the above probability?
Many thanks in advance.
  5 Comments
Matt J
Matt J on 18 Aug 2019
Possibly you want a conditional CDF?
prob(z<a | z<b)
george pepper
george pepper on 18 Aug 2019
I think this is right. How can I code this?

Sign in to comment.

Accepted Answer

Matt J
Matt J on 18 Aug 2019
Edited: Matt J on 18 Aug 2019
I think this is right. How can I code this?
function out=conditionalCDF(a,b,x,beta,sigma)
pa=normcdf(log(a)-x*beta,0,sigma);
pb=normcdf(log(b)-x*beta,0,sigma);
out=min(1, pa./pb);
end

More Answers (0)

Community Treasure Hunt

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

Start Hunting!