Gilles created STATISTICS-2: ------------------------------- Summary: Migrate one-dimensional statistical distributions from "Commons Math" Key: STATISTICS-2 URL: https://issues.apache.org/jira/browse/STATISTICS-2 Project: Apache Commons Statistics Issue Type: Wish Components: distribution Reporter: Gilles
I propose to migrate codes currently in {{org.apache.commons.math4.distribution}} to a "commons-statistics-distribution" module. Only the "one-dimensional" distributions are concerned (to avoid a dependency on the {{org.apache.commons.math4.linear}} package). {{EmpiricalDistribution}} and {{EnumeratedDistribution}} are also excluded from the move (about the latter see also RNG-47). Adaptation: * Create sub-packages for ** discrete distributions ** continuous distributions * Make custom exceptions (similar to pending work in "Commons Numbers": NUMBERS-40). Issue: * Method {code:java} double inverseCumulativeProbability(double p){code} depends on a "solver" defined in {{org.apache.commons.math4.analysis.solvers}} package. A solution would be to copy the necessary functionality ({{BrentSolver}}) as an "internal" utility. Another would be to provide an API for "externalizing" the functionality: {code:java} double inverseCumulativeProbability(double p, RootSolver p){code} were {{RootSolver}} would an interface defined in "Commons Statistics". Since the solver is not always used for computing the requested value, the latter solution would make the API more "self-documenting". In addition to avoiding code duplication, it also lets the {{RootSolver}} provider deal with the meaning of any input parameter (a.o. the "tolerance") and, in effect, gives the user entire control on the solver. -- This message was sent by Atlassian JIRA (v7.6.3#76005)