-
-
Notifications
You must be signed in to change notification settings - Fork 1
Open
Labels
contribIntegration with 3rd party packagesIntegration with 3rd party packagesenhancementNew feature or requestNew feature or request
Milestone
Description
The current monkey-patched methods have several issues:
- type annotations are impossible for extensions methods, and I've seen no attempts at a PEP that plans to add the required functionality
- relies on undocumented
scipy.stats.rv_*internals, which can break without warning - not guaranteed to work when using multiprocessing (it might be fine when using fork, but with e.g. spawn or
joblib+lokyI suspect it could break, although I have yet to test this). - difficult to document properly within mkdocs (hacks required), especially when considering that the docstring styles of
scipyandlmoare incompatible. - negatively affects the performance of
import lmo(the first time)
Instead, it'd be better to extend the lmo.l_* moment functions, making them accept the rv_ instances directly.
- implement for discrete RV's
- implement for continuous RV's
- document the usage, and add (doctest) examples
- write (hypothesis) tests for the discrete/continuous RV's in
lmo.distributionsandscipy.stats - use two sepearate
TypedDict's for**kwargsfor specifying extra options to the underlying sample- and population- L-moments estimators - add appropriate
@overload's. - remove
lmo.contrib.scipy_stats.l_rv_genericand the related monkey-patch machinery
Metadata
Metadata
Assignees
Labels
contribIntegration with 3rd party packagesIntegration with 3rd party packagesenhancementNew feature or requestNew feature or request