distributions.Lognormal
Lognormal distribution: ln X ~ Normal(meanlog, sdlog**2).
Usage
distributions.Lognormal()Parameters
meanlog: float-
Mean of
ln X. sdlog: float-
Standard deviation of
ln X; must be positive.
Raises
Examples
>>> from prospicio.distributions import Lognormal
>>> d = Lognormal.from_mean_cv(1000.0, 0.5)
>>> round(d.mean(), 6)1000.0
Attributes
| Name | Description |
|---|---|
| meanlog |
Mean of ln X.
|
| sdlog |
Standard deviation of ln X.
|
meanlog
Mean of ln X.
meanlog: float
sdlog
Standard deviation of ln X.
sdlog: float
Methods
| Name | Description |
|---|---|
| cdf() |
Distribution function P(X <= x).
|
| from_mean_cv() | Lognormal with the given mean and coefficient of variation. |
| layer() | Expected loss to the layer limit xs attachment. |
| lev() |
Limited expected value E[min(X, limit)].
|
| mean() | Mean of the distribution. |
| quantile() |
Quantile: the smallest x with P(X <= x) >= p.
|
| sample() |
n draws from stream stream of the generator keyed by seed.
|
| std() | Standard deviation of the distribution. |
| stop_loss() |
Expected excess over a retention, E[max(X - retention, 0)],
|
| variance() | Variance of the distribution. |
cdf()
Distribution function P(X <= x).
Usage
cdf(x)Parameters
x: float
Returns
float
from_mean_cv()
Lognormal with the given mean and coefficient of variation.
Usage
from_mean_cv(mean, cv)Parameters
mean: float-
Mean of
X; must be positive. cv: float-
Coefficient of variation of
X; must be positive.
Returns
Lognormal
Raises
ValueError-
If mean or
cvis not positive and finite.
layer()
Expected loss to the layer limit xs attachment.
Usage
layer(limit, attachment)Parameters
limit: floatattachment: float
Returns
float
Examples
>>> from prospicio.distributions import Lognormal
>>> d = Lognormal(7.0, 0.5)
>>> abs(d.layer(1000.0, 0.0) - d.lev(1000.0)) < 1e-9True
lev()
Limited expected value E[min(X, limit)].
Usage
lev(limit)Parameters
limit: float
Returns
float
mean()
Mean of the distribution.
Usage
mean()Returns
float
quantile()
Quantile: the smallest x with P(X <= x) >= p.
Usage
quantile(p)Parameters
p: float-
Probability in
[0, 1];quantile(1.0)isinf.
Returns
float
Raises
ValueError-
If p is outside
[0, 1].
sample()
Usage
sample(n, seed, stream=0)The same (seed, stream) gives the same draws in Python, R and Rust.
Parameters
n: int-
Number of draws.
seed: int-
Generator seed.
stream: int = 0- Stream id; distinct streams are independent.
Returns
list of float
std()
Standard deviation of the distribution.
Usage
std()Returns
float
stop_loss()
Expected excess over a retention, E[max(X - retention, 0)],
Usage
stop_loss(retention)accurate far into the tail.
Parameters
retention: float
Returns
float
variance()
Variance of the distribution.
Usage
variance()Returns
float