-
Notifications
You must be signed in to change notification settings - Fork 179
Description
Describe the bug
The BurrIII distribution implementation in skpro/distributions/burr_iii.py incorrectly wraps scipy.stats.burr12 (Burr Type XII) instead of scipy.stats.burr (Burr Type III).
While the code contains a comment stating that Burr III is Burr XII with d=1 (which is mathematically true as a special case), this implementation is problematic for several reasons:
Mathematical Inconsistency: Using the wrong Scipy object is conceptually incorrect and error-prone.
Missing Parameters: BurrIII should ideally support two shape parameters (
Inaccurate Implementation: The _get_scipy_object method explicitly returns burr12.
To Reproduce
# From skpro/distributions/burr_iii.py
def _get_scipy_object(self) -> rv_continuous:
return burr12 # Should be 'burr'
Expected behavior
BurrIII should wrap scipy.stats.burr.
BurrIII should ideally support both c and d shape parameters.
Environment
OS: mac
skpro version: latest main
Additional context
I found this while auditing the distribution library for missing implementations and inconsistencies.