You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by er...@apache.org on 2018/01/25 19:06:55 UTC

[07/21] [math] MATH-1443: Depend on "Commons Statistics".

MATH-1443: Depend on "Commons Statistics".


Project: http://git-wip-us.apache.org/repos/asf/commons-math/repo
Commit: http://git-wip-us.apache.org/repos/asf/commons-math/commit/c4218b83
Tree: http://git-wip-us.apache.org/repos/asf/commons-math/tree/c4218b83
Diff: http://git-wip-us.apache.org/repos/asf/commons-math/diff/c4218b83

Branch: refs/heads/master
Commit: c4218b83851c8dba1f275e3095913d9636aa5000
Parents: bd15dc7
Author: Gilles <er...@apache.org>
Authored: Thu Jan 25 17:08:40 2018 +0100
Committer: Gilles <er...@apache.org>
Committed: Thu Jan 25 17:08:40 2018 +0100

----------------------------------------------------------------------
 .../distribution/AbstractIntegerDistribution.java |  5 +++--
 .../distribution/AbstractRealDistribution.java    |  5 +++--
 .../distribution/EnumeratedRealDistribution.java  | 15 +++++++++------
 .../math4/distribution/IntegerDistribution.java   |  3 ++-
 .../math4/distribution/RealDistribution.java      |  3 ++-
 .../nonlinear/scalar/noderiv/CMAESOptimizer.java  |  2 +-
 .../math4/stat/inference/InferenceTestUtils.java  | 18 +++++++++---------
 .../stat/inference/KolmogorovSmirnovTest.java     | 14 +++++++-------
 .../math4/stat/interval/AgrestiCoullInterval.java |  2 +-
 .../interval/NormalApproximationInterval.java     |  2 +-
 .../math4/stat/interval/WilsonScoreInterval.java  |  2 +-
 .../math4/distribution/BetaDistributionTest.java  |  8 +++++---
 .../EnumeratedRealDistributionTest.java           | 11 ++++++-----
 .../descriptive/rank/PSquarePercentileTest.java   | 10 +++++-----
 .../stat/inference/InferenceTestUtilsTest.java    |  2 +-
 .../stat/inference/KolmogorovSmirnovTestTest.java | 10 +++++-----
 16 files changed, 61 insertions(+), 51 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/commons-math/blob/c4218b83/src/main/java/org/apache/commons/math4/distribution/AbstractIntegerDistribution.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/commons/math4/distribution/AbstractIntegerDistribution.java b/src/main/java/org/apache/commons/math4/distribution/AbstractIntegerDistribution.java
index 86ecdf9..99f0060 100644
--- a/src/main/java/org/apache/commons/math4/distribution/AbstractIntegerDistribution.java
+++ b/src/main/java/org/apache/commons/math4/distribution/AbstractIntegerDistribution.java
@@ -18,6 +18,7 @@ package org.apache.commons.math4.distribution;
 
 import java.io.Serializable;
 
+import org.apache.commons.statistics.distribution.DiscreteDistribution;
 import org.apache.commons.math4.exception.MathInternalError;
 import org.apache.commons.math4.exception.NumberIsTooLargeException;
 import org.apache.commons.math4.exception.OutOfRangeException;
@@ -186,7 +187,7 @@ public abstract class AbstractIntegerDistribution implements IntegerDistribution
      * @return an array of size {@code n}.
      */
     public static int[] sample(int n,
-                               IntegerDistribution.Sampler sampler) {
+                               DiscreteDistribution.Sampler sampler) {
         final int[] samples = new int[n];
         for (int i = 0; i < n; i++) {
             samples[i] = sampler.sample();
@@ -196,7 +197,7 @@ public abstract class AbstractIntegerDistribution implements IntegerDistribution
 
     /**{@inheritDoc} */
     @Override
-    public IntegerDistribution.Sampler createSampler(final UniformRandomProvider rng) {
+    public Sampler createSampler(final UniformRandomProvider rng) {
         return new IntegerDistribution.Sampler() {
             /**
              * Inversion method distribution sampler.

http://git-wip-us.apache.org/repos/asf/commons-math/blob/c4218b83/src/main/java/org/apache/commons/math4/distribution/AbstractRealDistribution.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/commons/math4/distribution/AbstractRealDistribution.java b/src/main/java/org/apache/commons/math4/distribution/AbstractRealDistribution.java
index 27800a6..c00039a 100644
--- a/src/main/java/org/apache/commons/math4/distribution/AbstractRealDistribution.java
+++ b/src/main/java/org/apache/commons/math4/distribution/AbstractRealDistribution.java
@@ -18,6 +18,7 @@ package org.apache.commons.math4.distribution;
 
 import java.io.Serializable;
 
+import org.apache.commons.statistics.distribution.ContinuousDistribution;
 import org.apache.commons.math4.analysis.UnivariateFunction;
 import org.apache.commons.math4.analysis.solvers.UnivariateSolverUtils;
 import org.apache.commons.math4.exception.NumberIsTooLargeException;
@@ -234,7 +235,7 @@ public abstract class AbstractRealDistribution
      * @return an array of size {@code n}.
      */
     public static double[] sample(int n,
-                                  RealDistribution.Sampler sampler) {
+                                  ContinuousDistribution.Sampler sampler) {
         final double[] samples = new double[n];
         for (int i = 0; i < n; i++) {
             samples[i] = sampler.sample();
@@ -244,7 +245,7 @@ public abstract class AbstractRealDistribution
 
     /**{@inheritDoc} */
     @Override
-    public RealDistribution.Sampler createSampler(final UniformRandomProvider rng) {
+    public Sampler createSampler(final UniformRandomProvider rng) {
         return new RealDistribution.Sampler() {
             /**
              * Inversion method distribution sampler.

http://git-wip-us.apache.org/repos/asf/commons-math/blob/c4218b83/src/main/java/org/apache/commons/math4/distribution/EnumeratedRealDistribution.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/commons/math4/distribution/EnumeratedRealDistribution.java b/src/main/java/org/apache/commons/math4/distribution/EnumeratedRealDistribution.java
index f54663b..55c0992 100644
--- a/src/main/java/org/apache/commons/math4/distribution/EnumeratedRealDistribution.java
+++ b/src/main/java/org/apache/commons/math4/distribution/EnumeratedRealDistribution.java
@@ -21,7 +21,9 @@ import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
 import java.util.Map.Entry;
+import java.io.Serializable;
 
+import org.apache.commons.statistics.distribution.ContinuousDistribution;
 import org.apache.commons.math4.exception.DimensionMismatchException;
 import org.apache.commons.math4.exception.MathArithmeticException;
 import org.apache.commons.math4.exception.NotANumberException;
@@ -41,8 +43,9 @@ import org.apache.commons.math4.util.Pair;
  *
  * @since 3.2
  */
-public class EnumeratedRealDistribution extends AbstractRealDistribution {
-
+public class EnumeratedRealDistribution
+    implements ContinuousDistribution,
+               Serializable {
     /** Serializable UID. */
     private static final long serialVersionUID = 20160311L;
 
@@ -195,7 +198,7 @@ public class EnumeratedRealDistribution extends AbstractRealDistribution {
      * @return {@code sum(singletons[i] * probabilities[i])}
      */
     @Override
-    public double getNumericalMean() {
+    public double getMean() {
         double mean = 0;
 
         for (final Pair<Double, Double> sample : innerDistribution.getPmf()) {
@@ -211,7 +214,7 @@ public class EnumeratedRealDistribution extends AbstractRealDistribution {
      * @return {@code sum((singletons[i] - mean) ^ 2 * probabilities[i])}
      */
     @Override
-    public double getNumericalVariance() {
+    public double getVariance() {
         double mean = 0;
         double meanOfSquares = 0;
 
@@ -275,8 +278,8 @@ public class EnumeratedRealDistribution extends AbstractRealDistribution {
 
     /** {@inheritDoc} */
     @Override
-    public RealDistribution.Sampler createSampler(final UniformRandomProvider rng) {
-        return new RealDistribution.Sampler() {
+    public ContinuousDistribution.Sampler createSampler(final UniformRandomProvider rng) {
+        return new ContinuousDistribution.Sampler() {
             /** Delegate. */
             private final EnumeratedDistribution<Double>.Sampler inner =
                 innerDistribution.createSampler(rng);

http://git-wip-us.apache.org/repos/asf/commons-math/blob/c4218b83/src/main/java/org/apache/commons/math4/distribution/IntegerDistribution.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/commons/math4/distribution/IntegerDistribution.java b/src/main/java/org/apache/commons/math4/distribution/IntegerDistribution.java
index 34a51d0..5d55f98 100644
--- a/src/main/java/org/apache/commons/math4/distribution/IntegerDistribution.java
+++ b/src/main/java/org/apache/commons/math4/distribution/IntegerDistribution.java
@@ -16,6 +16,7 @@
  */
 package org.apache.commons.math4.distribution;
 
+import org.apache.commons.statistics.distribution.DiscreteDistribution;
 import org.apache.commons.math4.exception.NumberIsTooLargeException;
 import org.apache.commons.math4.exception.OutOfRangeException;
 import org.apache.commons.rng.UniformRandomProvider;
@@ -157,7 +158,7 @@ public interface IntegerDistribution {
     /**
      * Sampling functionality.
      */
-    interface Sampler {
+    interface Sampler extends DiscreteDistribution.Sampler {
         /**
          * Generates a random value sampled from this distribution.
          *

http://git-wip-us.apache.org/repos/asf/commons-math/blob/c4218b83/src/main/java/org/apache/commons/math4/distribution/RealDistribution.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/commons/math4/distribution/RealDistribution.java b/src/main/java/org/apache/commons/math4/distribution/RealDistribution.java
index baaf747..45511e1 100644
--- a/src/main/java/org/apache/commons/math4/distribution/RealDistribution.java
+++ b/src/main/java/org/apache/commons/math4/distribution/RealDistribution.java
@@ -16,6 +16,7 @@
  */
 package org.apache.commons.math4.distribution;
 
+import org.apache.commons.statistics.distribution.ContinuousDistribution;
 import org.apache.commons.math4.exception.NumberIsTooLargeException;
 import org.apache.commons.math4.exception.OutOfRangeException;
 import org.apache.commons.rng.UniformRandomProvider;
@@ -172,7 +173,7 @@ public interface RealDistribution {
     /**
      * Sampling functionality.
      */
-    interface Sampler {
+    interface Sampler extends ContinuousDistribution.Sampler {
         /**
          * Generates a random value sampled from this distribution.
          *

http://git-wip-us.apache.org/repos/asf/commons-math/blob/c4218b83/src/main/java/org/apache/commons/math4/optim/nonlinear/scalar/noderiv/CMAESOptimizer.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/commons/math4/optim/nonlinear/scalar/noderiv/CMAESOptimizer.java b/src/main/java/org/apache/commons/math4/optim/nonlinear/scalar/noderiv/CMAESOptimizer.java
index 146633e..d207845 100644
--- a/src/main/java/org/apache/commons/math4/optim/nonlinear/scalar/noderiv/CMAESOptimizer.java
+++ b/src/main/java/org/apache/commons/math4/optim/nonlinear/scalar/noderiv/CMAESOptimizer.java
@@ -238,7 +238,7 @@ public class CMAESOptimizer
         this.isActiveCMA = isActiveCMA;
         this.diagonalOnly = diagonalOnly;
         this.checkFeasableCount = checkFeasableCount;
-        this.random = new NormalDistribution().createSampler(rng);
+        this.random = new NormalDistribution(0, 1).createSampler(rng);
         this.generateStatistics = generateStatistics;
     }
 

http://git-wip-us.apache.org/repos/asf/commons-math/blob/c4218b83/src/main/java/org/apache/commons/math4/stat/inference/InferenceTestUtils.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/commons/math4/stat/inference/InferenceTestUtils.java b/src/main/java/org/apache/commons/math4/stat/inference/InferenceTestUtils.java
index c9e70d4..6ed340b 100644
--- a/src/main/java/org/apache/commons/math4/stat/inference/InferenceTestUtils.java
+++ b/src/main/java/org/apache/commons/math4/stat/inference/InferenceTestUtils.java
@@ -19,7 +19,7 @@ package org.apache.commons.math4.stat.inference;
 import java.util.Collection;
 
 import org.apache.commons.rng.UniformRandomProvider;
-import org.apache.commons.math4.distribution.RealDistribution;
+import org.apache.commons.statistics.distribution.ContinuousDistribution;
 import org.apache.commons.math4.exception.ConvergenceException;
 import org.apache.commons.math4.exception.DimensionMismatchException;
 import org.apache.commons.math4.exception.InsufficientDataException;
@@ -606,10 +606,10 @@ public class InferenceTestUtils {
      * @param dist reference distribution
      * @param data sample being evaluated
      * @return Kolmogorov-Smirnov statistic \(D_n\)
-     * @see org.apache.commons.math4.stat.inference.KolmogorovSmirnovTest#kolmogorovSmirnovStatistic(RealDistribution, double[])
+     * @see org.apache.commons.math4.stat.inference.KolmogorovSmirnovTest#kolmogorovSmirnovStatistic(ContinuousDistribution, double[])
      * @since 3.3
      */
-    public static double kolmogorovSmirnovStatistic(RealDistribution dist, double[] data)
+    public static double kolmogorovSmirnovStatistic(ContinuousDistribution dist, double[] data)
             throws InsufficientDataException, NullArgumentException {
         return KS_TEST.kolmogorovSmirnovStatistic(dist, data);
     }
@@ -619,10 +619,10 @@ public class InferenceTestUtils {
      * @param data sample being being evaluated
      * @return the p-value associated with the null hypothesis that {@code data} is a sample from
      *         {@code distribution}
-     * @see org.apache.commons.math4.stat.inference.KolmogorovSmirnovTest#kolmogorovSmirnovTest(RealDistribution, double[])
+     * @see org.apache.commons.math4.stat.inference.KolmogorovSmirnovTest#kolmogorovSmirnovTest(ContinuousDistribution, double[])
      * @since 3.3
      */
-    public static double kolmogorovSmirnovTest(RealDistribution dist, double[] data)
+    public static double kolmogorovSmirnovTest(ContinuousDistribution dist, double[] data)
             throws InsufficientDataException, NullArgumentException {
         return KS_TEST.kolmogorovSmirnovTest(dist, data);
     }
@@ -633,10 +633,10 @@ public class InferenceTestUtils {
      * @param strict whether or not to force exact computation of the p-value
      * @return the p-value associated with the null hypothesis that {@code data} is a sample from
      *         {@code distribution}
-     * @see org.apache.commons.math4.stat.inference.KolmogorovSmirnovTest#kolmogorovSmirnovTest(RealDistribution, double[], boolean)
+     * @see org.apache.commons.math4.stat.inference.KolmogorovSmirnovTest#kolmogorovSmirnovTest(ContinuousDistribution, double[], boolean)
      * @since 3.3
      */
-    public static double kolmogorovSmirnovTest(RealDistribution dist, double[] data, boolean strict)
+    public static double kolmogorovSmirnovTest(ContinuousDistribution dist, double[] data, boolean strict)
             throws InsufficientDataException, NullArgumentException {
         return KS_TEST.kolmogorovSmirnovTest(dist, data, strict);
     }
@@ -647,10 +647,10 @@ public class InferenceTestUtils {
      * @param alpha significance level of the test
      * @return true iff the null hypothesis that {@code data} is a sample from {@code distribution}
      *         can be rejected with confidence 1 - {@code alpha}
-     * @see org.apache.commons.math4.stat.inference.KolmogorovSmirnovTest#kolmogorovSmirnovTest(RealDistribution, double[], double)
+     * @see org.apache.commons.math4.stat.inference.KolmogorovSmirnovTest#kolmogorovSmirnovTest(ContinuousDistribution, double[], double)
      * @since 3.3
      */
-    public static boolean kolmogorovSmirnovTest(RealDistribution dist, double[] data, double alpha)
+    public static boolean kolmogorovSmirnovTest(ContinuousDistribution dist, double[] data, double alpha)
             throws InsufficientDataException, NullArgumentException {
         return KS_TEST.kolmogorovSmirnovTest(dist, data, alpha);
     }

http://git-wip-us.apache.org/repos/asf/commons-math/blob/c4218b83/src/main/java/org/apache/commons/math4/stat/inference/KolmogorovSmirnovTest.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/commons/math4/stat/inference/KolmogorovSmirnovTest.java b/src/main/java/org/apache/commons/math4/stat/inference/KolmogorovSmirnovTest.java
index 4b850c0..153d1d6 100644
--- a/src/main/java/org/apache/commons/math4/stat/inference/KolmogorovSmirnovTest.java
+++ b/src/main/java/org/apache/commons/math4/stat/inference/KolmogorovSmirnovTest.java
@@ -22,9 +22,9 @@ import java.util.Arrays;
 
 import org.apache.commons.rng.simple.RandomSource;
 import org.apache.commons.rng.UniformRandomProvider;
+import org.apache.commons.statistics.distribution.ContinuousDistribution;
 import org.apache.commons.numbers.combinatorics.BinomialCoefficientDouble;
 import org.apache.commons.math4.distribution.EnumeratedRealDistribution;
-import org.apache.commons.math4.distribution.RealDistribution;
 import org.apache.commons.math4.distribution.AbstractRealDistribution;
 import org.apache.commons.math4.exception.InsufficientDataException;
 import org.apache.commons.math4.exception.MathArithmeticException;
@@ -144,7 +144,7 @@ public class KolmogorovSmirnovTest {
      * @throws InsufficientDataException if {@code data} does not have length at least 2
      * @throws NullArgumentException if {@code data} is null
      */
-    public double kolmogorovSmirnovTest(RealDistribution distribution, double[] data, boolean exact) {
+    public double kolmogorovSmirnovTest(ContinuousDistribution distribution, double[] data, boolean exact) {
         return 1d - cdf(kolmogorovSmirnovStatistic(distribution, data), data.length, exact);
     }
 
@@ -160,7 +160,7 @@ public class KolmogorovSmirnovTest {
      * @throws InsufficientDataException if {@code data} does not have length at least 2
      * @throws NullArgumentException if {@code data} is null
      */
-    public double kolmogorovSmirnovStatistic(RealDistribution distribution, double[] data) {
+    public double kolmogorovSmirnovStatistic(ContinuousDistribution distribution, double[] data) {
         checkArray(data);
         final int n = data.length;
         final double nd = n;
@@ -224,7 +224,7 @@ public class KolmogorovSmirnovTest {
      * href="http://en.wikipedia.org/wiki/Kolmogorov-Smirnov_test"> Kolmogorov-Smirnov test</a>
      * evaluating the null hypothesis that {@code x} and {@code y} are samples drawn from the same
      * probability distribution. Assumes the strict form of the inequality used to compute the
-     * p-value. See {@link #kolmogorovSmirnovTest(RealDistribution, double[], boolean)}.
+     * p-value. See {@link #kolmogorovSmirnovTest(ContinuousDistribution, double[], boolean)}.
      *
      * @param x first sample dataset
      * @param y second sample dataset
@@ -320,7 +320,7 @@ public class KolmogorovSmirnovTest {
      * @throws InsufficientDataException if {@code data} does not have length at least 2
      * @throws NullArgumentException if {@code data} is null
      */
-    public double kolmogorovSmirnovTest(RealDistribution distribution, double[] data) {
+    public double kolmogorovSmirnovTest(ContinuousDistribution distribution, double[] data) {
         return kolmogorovSmirnovTest(distribution, data, false);
     }
 
@@ -336,7 +336,7 @@ public class KolmogorovSmirnovTest {
      * @throws InsufficientDataException if {@code data} does not have length at least 2
      * @throws NullArgumentException if {@code data} is null
      */
-    public boolean kolmogorovSmirnovTest(RealDistribution distribution, double[] data, double alpha) {
+    public boolean kolmogorovSmirnovTest(ContinuousDistribution distribution, double[] data, double alpha) {
         if ((alpha <= 0) || (alpha > 0.5)) {
             throw new OutOfRangeException(LocalizedFormats.OUT_OF_BOUND_SIGNIFICANCE_LEVEL, alpha, 0, 0.5);
         }
@@ -375,7 +375,7 @@ public class KolmogorovSmirnovTest {
         final double[] combined = new double[xLength + yLength];
         System.arraycopy(x, 0, combined, 0, xLength);
         System.arraycopy(y, 0, combined, xLength, yLength);
-        final RealDistribution.Sampler sampler = new EnumeratedRealDistribution(combined).createSampler(rng);
+        final ContinuousDistribution.Sampler sampler = new EnumeratedRealDistribution(combined).createSampler(rng);
         final long d = integralKolmogorovSmirnovStatistic(x, y);
         int greaterCount = 0;
         int equalCount = 0;

http://git-wip-us.apache.org/repos/asf/commons-math/blob/c4218b83/src/main/java/org/apache/commons/math4/stat/interval/AgrestiCoullInterval.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/commons/math4/stat/interval/AgrestiCoullInterval.java b/src/main/java/org/apache/commons/math4/stat/interval/AgrestiCoullInterval.java
index 7318ab9..9b9dded 100644
--- a/src/main/java/org/apache/commons/math4/stat/interval/AgrestiCoullInterval.java
+++ b/src/main/java/org/apache/commons/math4/stat/interval/AgrestiCoullInterval.java
@@ -34,7 +34,7 @@ public class AgrestiCoullInterval implements BinomialConfidenceInterval {
     public ConfidenceInterval createInterval(int numberOfTrials, int numberOfSuccesses, double confidenceLevel) {
         IntervalUtils.checkParameters(numberOfTrials, numberOfSuccesses, confidenceLevel);
         final double alpha = (1.0 - confidenceLevel) / 2;
-        final NormalDistribution normalDistribution = new NormalDistribution();
+        final NormalDistribution normalDistribution = new NormalDistribution(0, 1);
         final double z = normalDistribution.inverseCumulativeProbability(1 - alpha);
         final double zSquared = FastMath.pow(z, 2);
         final double modifiedNumberOfTrials = numberOfTrials + zSquared;

http://git-wip-us.apache.org/repos/asf/commons-math/blob/c4218b83/src/main/java/org/apache/commons/math4/stat/interval/NormalApproximationInterval.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/commons/math4/stat/interval/NormalApproximationInterval.java b/src/main/java/org/apache/commons/math4/stat/interval/NormalApproximationInterval.java
index 1f59c8f..9c63d33 100644
--- a/src/main/java/org/apache/commons/math4/stat/interval/NormalApproximationInterval.java
+++ b/src/main/java/org/apache/commons/math4/stat/interval/NormalApproximationInterval.java
@@ -36,7 +36,7 @@ public class NormalApproximationInterval implements BinomialConfidenceInterval {
         IntervalUtils.checkParameters(numberOfTrials, numberOfSuccesses, confidenceLevel);
         final double mean = (double) numberOfSuccesses / (double) numberOfTrials;
         final double alpha = (1.0 - confidenceLevel) / 2;
-        final NormalDistribution normalDistribution = new NormalDistribution();
+        final NormalDistribution normalDistribution = new NormalDistribution(0, 1);
         final double difference = normalDistribution.inverseCumulativeProbability(1 - alpha) *
                                   FastMath.sqrt(1.0 / numberOfTrials * mean * (1 - mean));
         return new ConfidenceInterval(mean - difference, mean + difference, confidenceLevel);

http://git-wip-us.apache.org/repos/asf/commons-math/blob/c4218b83/src/main/java/org/apache/commons/math4/stat/interval/WilsonScoreInterval.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/commons/math4/stat/interval/WilsonScoreInterval.java b/src/main/java/org/apache/commons/math4/stat/interval/WilsonScoreInterval.java
index 7facd61..7881ec9 100644
--- a/src/main/java/org/apache/commons/math4/stat/interval/WilsonScoreInterval.java
+++ b/src/main/java/org/apache/commons/math4/stat/interval/WilsonScoreInterval.java
@@ -32,7 +32,7 @@ public class WilsonScoreInterval implements BinomialConfidenceInterval {
     public ConfidenceInterval createInterval(int numberOfTrials, int numberOfSuccesses, double confidenceLevel) {
         IntervalUtils.checkParameters(numberOfTrials, numberOfSuccesses, confidenceLevel);
         final double alpha = (1 - confidenceLevel) / 2;
-        final NormalDistribution normalDistribution = new NormalDistribution();
+        final NormalDistribution normalDistribution = new NormalDistribution(0, 1);
         final double z = normalDistribution.inverseCumulativeProbability(1 - alpha);
         final double zSquared = z * z;
         final double oneOverNumTrials = 1d / numberOfTrials;

http://git-wip-us.apache.org/repos/asf/commons-math/blob/c4218b83/src/test/java/org/apache/commons/math4/distribution/BetaDistributionTest.java
----------------------------------------------------------------------
diff --git a/src/test/java/org/apache/commons/math4/distribution/BetaDistributionTest.java b/src/test/java/org/apache/commons/math4/distribution/BetaDistributionTest.java
index cf5b58f..bcf5865 100644
--- a/src/test/java/org/apache/commons/math4/distribution/BetaDistributionTest.java
+++ b/src/test/java/org/apache/commons/math4/distribution/BetaDistributionTest.java
@@ -18,6 +18,7 @@ package org.apache.commons.math4.distribution;
 
 import java.util.Arrays;
 
+import org.apache.commons.statistics.distribution.ContinuousDistribution;
 import org.apache.commons.rng.simple.RandomSource;
 import org.apache.commons.rng.UniformRandomProvider;
 import org.apache.commons.math4.stat.StatUtils;
@@ -346,9 +347,10 @@ public class BetaDistributionTest {
         final double level = 0.01;
         for (final double alpha : alphaBetas) {
             for (final double beta : alphaBetas) {
-                final BetaDistribution betaDistribution = new BetaDistribution(alpha, beta);
+                final org.apache.commons.statistics.distribution.BetaDistribution betaDistribution =
+                    new org.apache.commons.statistics.distribution.BetaDistribution(alpha, beta);
 
-                final RealDistribution.Sampler sampler = betaDistribution.createSampler(rng);
+                final ContinuousDistribution.Sampler sampler = betaDistribution.createSampler(rng);
                 final double[] observed = AbstractRealDistribution.sample(numSamples, sampler);
 
                 Assert.assertFalse("G goodness-of-fit test rejected null at alpha = " + level,
@@ -359,7 +361,7 @@ public class BetaDistributionTest {
         }
     }
 
-    private double gTest(final RealDistribution expectedDistribution, final double[] values) {
+    private double gTest(final ContinuousDistribution expectedDistribution, final double[] values) {
         final int numBins = values.length / 30;
         final double[] breaks = new double[numBins];
         for (int b = 0; b < breaks.length; b++) {

http://git-wip-us.apache.org/repos/asf/commons-math/blob/c4218b83/src/test/java/org/apache/commons/math4/distribution/EnumeratedRealDistributionTest.java
----------------------------------------------------------------------
diff --git a/src/test/java/org/apache/commons/math4/distribution/EnumeratedRealDistributionTest.java b/src/test/java/org/apache/commons/math4/distribution/EnumeratedRealDistributionTest.java
index 77abceb..def4d06 100644
--- a/src/test/java/org/apache/commons/math4/distribution/EnumeratedRealDistributionTest.java
+++ b/src/test/java/org/apache/commons/math4/distribution/EnumeratedRealDistributionTest.java
@@ -21,6 +21,7 @@ import static org.junit.Assert.assertEquals;
 import java.util.ArrayList;
 import java.util.List;
 
+import org.apache.commons.statistics.distribution.ContinuousDistribution;
 import org.apache.commons.math4.distribution.EnumeratedDistribution;
 import org.apache.commons.math4.distribution.EnumeratedRealDistribution;
 import org.apache.commons.math4.exception.DimensionMismatchException;
@@ -136,7 +137,7 @@ public class EnumeratedRealDistributionTest {
      */
     @Test
     public void testGetNumericalMean() {
-        Assert.assertEquals(3.4, testDistribution.getNumericalMean(), 1e-10);
+        Assert.assertEquals(3.4, testDistribution.getMean(), 1e-10);
     }
 
     /**
@@ -144,7 +145,7 @@ public class EnumeratedRealDistributionTest {
      */
     @Test
     public void testGetNumericalVariance() {
-        Assert.assertEquals(7.84, testDistribution.getNumericalVariance(), 1e-10);
+        Assert.assertEquals(7.84, testDistribution.getVariance(), 1e-10);
     }
 
     /**
@@ -177,7 +178,7 @@ public class EnumeratedRealDistributionTest {
     @Test
     public void testSample() {
         final int n = 1000000;
-        final RealDistribution.Sampler sampler =
+        final ContinuousDistribution.Sampler sampler =
             testDistribution.createSampler(RandomSource.create(RandomSource.WELL_1024_A, -123456789));
         final double[] samples = AbstractRealDistribution.sample(n, sampler);
         Assert.assertEquals(n, samples.length);
@@ -187,9 +188,9 @@ public class EnumeratedRealDistributionTest {
             sum += samples[i];
             sumOfSquares += samples[i] * samples[i];
         }
-        Assert.assertEquals(testDistribution.getNumericalMean(),
+        Assert.assertEquals(testDistribution.getMean(),
                 sum / n, 1e-2);
-        Assert.assertEquals(testDistribution.getNumericalVariance(),
+        Assert.assertEquals(testDistribution.getVariance(),
                 sumOfSquares / n - FastMath.pow(sum / n, 2), 1e-2);
     }
 

http://git-wip-us.apache.org/repos/asf/commons-math/blob/c4218b83/src/test/java/org/apache/commons/math4/stat/descriptive/rank/PSquarePercentileTest.java
----------------------------------------------------------------------
diff --git a/src/test/java/org/apache/commons/math4/stat/descriptive/rank/PSquarePercentileTest.java b/src/test/java/org/apache/commons/math4/stat/descriptive/rank/PSquarePercentileTest.java
index 6380d12..ea985dd 100644
--- a/src/test/java/org/apache/commons/math4/stat/descriptive/rank/PSquarePercentileTest.java
+++ b/src/test/java/org/apache/commons/math4/stat/descriptive/rank/PSquarePercentileTest.java
@@ -24,9 +24,9 @@ import java.util.Iterator;
 import java.util.LinkedHashSet;
 import java.util.Set;
 
-import org.apache.commons.math4.distribution.LogNormalDistribution;
-import org.apache.commons.math4.distribution.NormalDistribution;
-import org.apache.commons.math4.distribution.RealDistribution;
+import org.apache.commons.statistics.distribution.LogNormalDistribution;
+import org.apache.commons.statistics.distribution.NormalDistribution;
+import org.apache.commons.statistics.distribution.ContinuousDistribution;
 import org.apache.commons.math4.distribution.AbstractRealDistribution;
 import org.apache.commons.math4.exception.MathIllegalArgumentException;
 import org.apache.commons.math4.exception.NullArgumentException;
@@ -709,8 +709,8 @@ public class PSquarePercentileTest extends
             STANDARD = 1000, BIG = 10000, VERY_BIG = 50000, LARGE = 1000000,
             VERY_LARGE = 10000000;
 
-    private void doDistributionTest(RealDistribution distribution) {
-        final RealDistribution.Sampler sampler =
+    private void doDistributionTest(ContinuousDistribution distribution) {
+        final ContinuousDistribution.Sampler sampler =
             distribution.createSampler(RandomSource.create(RandomSource.WELL_19937_C, 1000));
         double data[];
 

http://git-wip-us.apache.org/repos/asf/commons-math/blob/c4218b83/src/test/java/org/apache/commons/math4/stat/inference/InferenceTestUtilsTest.java
----------------------------------------------------------------------
diff --git a/src/test/java/org/apache/commons/math4/stat/inference/InferenceTestUtilsTest.java b/src/test/java/org/apache/commons/math4/stat/inference/InferenceTestUtilsTest.java
index aa6b10f..6b9f1b7 100644
--- a/src/test/java/org/apache/commons/math4/stat/inference/InferenceTestUtilsTest.java
+++ b/src/test/java/org/apache/commons/math4/stat/inference/InferenceTestUtilsTest.java
@@ -19,7 +19,7 @@ package org.apache.commons.math4.stat.inference;
 import java.util.ArrayList;
 import java.util.List;
 
-import org.apache.commons.math4.distribution.NormalDistribution;
+import org.apache.commons.statistics.distribution.NormalDistribution;
 import org.apache.commons.math4.exception.DimensionMismatchException;
 import org.apache.commons.math4.exception.NotPositiveException;
 import org.apache.commons.math4.exception.NotStrictlyPositiveException;

http://git-wip-us.apache.org/repos/asf/commons-math/blob/c4218b83/src/test/java/org/apache/commons/math4/stat/inference/KolmogorovSmirnovTestTest.java
----------------------------------------------------------------------
diff --git a/src/test/java/org/apache/commons/math4/stat/inference/KolmogorovSmirnovTestTest.java b/src/test/java/org/apache/commons/math4/stat/inference/KolmogorovSmirnovTestTest.java
index 66cc387..d1d4fcf 100644
--- a/src/test/java/org/apache/commons/math4/stat/inference/KolmogorovSmirnovTestTest.java
+++ b/src/test/java/org/apache/commons/math4/stat/inference/KolmogorovSmirnovTestTest.java
@@ -21,8 +21,8 @@ import java.lang.reflect.Method;
 import java.util.Arrays;
 
 import org.apache.commons.math4.TestUtils;
-import org.apache.commons.math4.distribution.NormalDistribution;
-import org.apache.commons.math4.distribution.UniformRealDistribution;
+import org.apache.commons.statistics.distribution.NormalDistribution;
+import org.apache.commons.statistics.distribution.UniformContinuousDistribution;
 import org.apache.commons.rng.simple.RandomSource;
 import org.apache.commons.rng.UniformRandomProvider;
 import org.apache.commons.numbers.combinatorics.BinomialCoefficient;
@@ -142,7 +142,7 @@ public class KolmogorovSmirnovTestTest {
     // @Test - takes about 6 seconds, uncomment for
     public void testOneSampleUniformUniform() {
         final KolmogorovSmirnovTest test = new KolmogorovSmirnovTest();
-        final UniformRealDistribution unif = new UniformRealDistribution(-0.5, 0.5);
+        final UniformContinuousDistribution unif = new UniformContinuousDistribution(-0.5, 0.5);
         Assert.assertEquals(8.881784197001252E-16, test.kolmogorovSmirnovTest(unif, uniform, false), TOLERANCE);
         Assert.assertTrue(test.kolmogorovSmirnovTest(unif, uniform, 0.05));
         Assert.assertEquals(0.5400666982352942, test.kolmogorovSmirnovStatistic(unif, uniform), TOLERANCE);
@@ -152,7 +152,7 @@ public class KolmogorovSmirnovTestTest {
     @Test
     public void testOneSampleUniformUniformSmallSample() {
         final KolmogorovSmirnovTest test = new KolmogorovSmirnovTest();
-        final UniformRealDistribution unif = new UniformRealDistribution(-0.5, 0.5);
+        final UniformContinuousDistribution unif = new UniformContinuousDistribution(-0.5, 0.5);
         final double[] shortUniform = new double[20];
         System.arraycopy(uniform, 0, shortUniform, 0, 20);
         Assert.assertEquals(4.117594598618268E-9, test.kolmogorovSmirnovTest(unif, shortUniform, false), TOLERANCE);
@@ -164,7 +164,7 @@ public class KolmogorovSmirnovTestTest {
     @Test
     public void testOneSampleUniformGaussian() {
         final KolmogorovSmirnovTest test = new KolmogorovSmirnovTest();
-        final UniformRealDistribution unif = new UniformRealDistribution(-0.5, 0.5);
+        final UniformContinuousDistribution unif = new UniformContinuousDistribution(-0.5, 0.5);
         // Value was obtained via exact test, validated against R. Running exact test takes a long
         // time.
         Assert.assertEquals(4.9405812774239166E-11, test.kolmogorovSmirnovTest(unif, gaussian, false), TOLERANCE);