Right-truncating a lognormal distribution

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 comentarios

Matt J
Matt J el 18 de Ag. de 2019
However, I know that z cannot take a value greater than a certain number, b.
This needs to be explained. If z is log-normal, how can it be bounded by b?
george pepper
george pepper el 18 de Ag. de 2019
Editada: george pepper el 18 de Ag. de 2019
From an underlying theory, I know that observations where z is greater than a constant, b, cannot exist in my data.
Matt J
Matt J el 18 de Ag. de 2019
But that contradicts your original claim that z is lognormal. Clearly z is not lognormal if it is bounded by b. You must say what the distribution actually is before we can talk about how to compute the CDF.
Possibly you want a conditional CDF?
prob(z<a | z<b)
george pepper
george pepper el 18 de Ag. de 2019
I think this is right. How can I code this?

Iniciar sesión para comentar.

 Respuesta aceptada

Matt J
Matt J el 18 de Ag. de 2019
Editada: Matt J el 18 de Ag. de 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

1 comentario

george pepper
george pepper el 18 de Ag. de 2019
Thanks so much for your time, Matt! Have a great day.

Iniciar sesión para comentar.

Más respuestas (0)

Preguntada:

el 18 de Ag. de 2019

Editada:

el 18 de Ag. de 2019

Community Treasure Hunt

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

Start Hunting!

Translated by