fitters
- pysatl_core.distributions.fitters.fit_pdf_to_cdf_1C(distribution, /, **kwargs)[source]
Fit
cdffrom an analytical or resolvablepdfvia numerical integration.- Parameters:
distribution (
Distribution)kwargs (Any)
- Returns:
Fitted
pdf -> cdfconversion.- Return type:
FittedComputationMethod[float,float]
- pysatl_core.distributions.fitters.fit_cdf_to_pdf_1C(distribution, /, **kwargs)[source]
Fit
pdfas a clipped numerical derivative ofcdf.- Parameters:
distribution (
Distribution)kwargs (Any)
- Returns:
Fitted
cdf -> pdfconversion.- Return type:
FittedComputationMethod[float,float]
- pysatl_core.distributions.fitters.fit_cdf_to_ppf_1C(distribution, /, **options)[source]
Fit
ppffrom a resolvablecdfusing a robust bracketing procedure.- Parameters:
distribution (
Distribution)options (Any)
- Returns:
Fitted
cdf -> ppfconversion.- Return type:
FittedComputationMethod[float,float]
- pysatl_core.distributions.fitters.fit_ppf_to_cdf_1C(distribution, /, **_)[source]
Fit
cdfby numerically inverting a resolvableppfwith a root solver.- Parameters:
distribution (
Distribution)_ (Any)
- Returns:
Fitted
ppf -> cdfconversion.- Return type:
FittedComputationMethod[float,float]
- pysatl_core.distributions.fitters.fit_pmf_to_cdf_1D(distribution, /, **_)[source]
Build Characteristic.CDF from Characteristic.PMF on a discrete support by partial summation.
The behaviour depends on the kind of discrete support: :rtype:
FittedComputationMethod[float,float]For table-like supports and left-bounded integer lattices, the Characteristic.CDF is constructed as a prefix sum over all support points
k <= x.For right-bounded integer lattices (support extends to
-inf), the Characteristic.CDF is computed via a tail sum:Characteristic.CDF(x) = 1 - sum_{k > x} pmf(k),
which only involves finitely many points.
Two-sided infinite integer lattices are not supported by this fitter — a numerically truncated algorithm would require additional configuration and is left for future work.
- Parameters:
distribution (pysatl_core.distributions.distribution.Distribution)
_ (Any)
- Return type:
- pysatl_core.distributions.fitters.fit_cdf_to_pmf_1D(distribution, /, **_)[source]
Extract Characteristic.PMF from Characteristic.CDF on a discrete support as jump sizes.
- Parameters:
distribution (
Distribution) – Distribution exposing a discrete support on.supportand a scalarcdfvia the computation strategy._ (Any)
- Returns:
Fitted
cdf -> pmfconversion.- Return type:
FittedComputationMethod[float,float]- Raises:
RuntimeError – If the distribution does not expose a discrete support.
Notes
pmf(x) = cdf(x) - cdf(prev(x)), whereprev(x)is the predecessor on the support (withcdf(prev) := 0if no predecessor exists).
- pysatl_core.distributions.fitters.fit_cdf_to_ppf_1D(distribution, /, **options)[source]
Fit discrete Characteristic.PPF from a resolvable Characteristic.CDF and explicit discrete support.
Semantics
For a given
q ∈ [0, 1]returns the leftmost support pointxsuch thatCharacteristic.CDF(x) ≥ q(step-quantile).Requires
distribution.support : discrete support container (iterable or cursor-like).
- type distribution:
pysatl_core.distributions.distribution.Distribution
- param distribution:
- type distribution:
Distribution- type **options:
- param **options:
Unused (kept for a uniform API with continuous fitters).
- type **options:
Any- returns:
Fitted
cdf -> ppfconversion for discrete 1D distributions.- rtype:
FittedComputationMethod[float,float]
- Parameters:
distribution (pysatl_core.distributions.distribution.Distribution)
options (Any)
- Return type:
- pysatl_core.distributions.fitters.fit_ppf_to_cdf_1D(distribution, /, **options)[source]
Fit discrete Characteristic.CDF using only a resolvable Characteristic.PPF via bisection on
q.Semantics
Characteristic.CDF(x) = sup { q ∈ [0,1] : Characteristic.PPF(q) ≤ x }- We implement this as a monotone predicate on
q: f(q) := (Characteristic.PPF(q) ≤ x), and find the largestqwithf(q) = True.
- type distribution:
pysatl_core.distributions.distribution.Distribution
- param distribution:
- type distribution:
Distribution- type **options:
- param **options:
Optional tuning: - q_tol : float, default 1e-12 - max_iter : int, default 100
- type **options:
Any- returns:
Fitted
ppf -> cdfconversion for discrete 1D distributions.- rtype:
FittedComputationMethod[float,float]
- Parameters:
distribution (pysatl_core.distributions.distribution.Distribution)
options (Any)
- Return type:
- We implement this as a monotone predicate on