Examples of BinomialDistribution

@version $Revision: 920852 $ $Date: 2010-03-09 13:53:44 +0100 (mar. 09 mars 2010) $
  • org.apache.commons.math3.distribution.BinomialDistribution
    pedia.org/wiki/Binomial_distribution">Binomial distribution (Wikipedia) @see Binomial Distribution (MathWorld)
  • org.jamesii.core.math.random.distributions.BinomialDistribution
    The Class BinomialDistribution. WARNING! Might produce incorrect results with a high number of trials. @author Jan Himmelspach
  • org.jquantlib.math.distributions.BinomialDistribution
    pedia.org/wiki/Binomial_distribution">Binomial Distribution @author Richard Gomes @author Dominik Holenstein

  • Examples of org.apache.commons.math3.distribution.BinomialDistribution

        @Test
        public void testErrorBound()
                throws Exception
        {
            int trials = 20;
            BinomialDistribution binomial = new BinomialDistribution(trials, 0.5);

            int successes = 0;
            Random rand = new Random(0);
            for (int i = 0; i < trials; i++) {
                int sum = 1_000;
                PageBuilder builder = new PageBuilder(ImmutableList.of(BIGINT, BIGINT));
                for (int j = 0; j < sum; j++) {
                    if (rand.nextDouble() < 0.5) {
                        builder.getBlockBuilder(0).appendLong(1);
                        builder.getBlockBuilder(1).appendLong(2);
                    }
                }

                AggregationFunction function = new DeterministicBootstrappedAggregation(createTestingBlockEncodingManager(), LONG_SUM);

                successes += approximateAggregationWithinErrorBound(function, 1, 0.5, (double) sum, builder.build()) ? 1 : 0;
            }

            // Since we used a confidence of 0.5, successes should have a binomial distribution B(n=20, p=0.5)
            assertTrue(binomial.inverseCumulativeProbability(0.01) < successes && successes < binomial.inverseCumulativeProbability(0.99));
        }
    View Full Code Here

    Examples of org.apache.commons.math3.distribution.BinomialDistribution

                if (Math.abs(approx - actual) <= error) {
                    inRange++;
                }
            }

            BinomialDistribution binomial = new BinomialDistribution(numberOfRuns, getConfidence());
            int lowerBound = binomial.inverseCumulativeProbability(0.01);
            int upperBound = binomial.inverseCumulativeProbability(0.99);
            assertTrue(lowerBound < inRange && inRange < upperBound, String.format("%d out of %d passed. Expected [%d, %d]", inRange, numberOfRuns, lowerBound, upperBound));
        }
    View Full Code Here

    Examples of org.apache.commons.math3.distribution.BinomialDistribution

        @Test
        public void testErrorBound()
                throws Exception
        {
            int trials = 20;
            BinomialDistribution binomial = new BinomialDistribution(trials, 0.5);

            int successes = 0;
            Random rand = new Random(0);
            for (int i = 0; i < trials; i++) {
                int sum = 1_000;
                PageBuilder builder = new PageBuilder(ImmutableList.of(BIGINT, BIGINT));
                for (int j = 0; j < sum; j++) {
                    if (rand.nextDouble() < 0.5) {
                        builder.getBlockBuilder(0).appendLong(1);
                        builder.getBlockBuilder(1).appendLong(2);
                    }
                }

                AggregationFunction function = new DeterministicBootstrappedAggregation(createTestingBlockEncodingManager(), LONG_SUM);

                successes += approximateAggregationWithinErrorBound(function, 1, 0.5, (double) sum, builder.build()) ? 1 : 0;
            }

            // Since we used a confidence of 0.5, successes should have a binomial distribution B(n=20, p=0.5)
            assertTrue(binomial.inverseCumulativeProbability(0.01) < successes && successes < binomial.inverseCumulativeProbability(0.99));
        }
    View Full Code Here

    Examples of org.apache.commons.math3.distribution.BinomialDistribution

        @Test
        public void testErrorBound()
                throws Exception
        {
            int trials = 20;
            BinomialDistribution binomial = new BinomialDistribution(trials, 0.5);

            int successes = 0;
            Random rand = new Random(0);
            for (int i = 0; i < trials; i++) {
                int sum = 1_000;
                List<TupleInfo> tupleInfos = ImmutableList.of(TupleInfo.SINGLE_LONG, TupleInfo.SINGLE_LONG);
                PageBuilder builder = new PageBuilder(tupleInfos);
                for (int j = 0; j < sum; j++) {
                    if (rand.nextDouble() < 0.5) {
                        builder.getBlockBuilder(0).append(1);
                        builder.getBlockBuilder(1).append(2);
                    }
                }

                BootstrappedAggregation function = new BootstrappedAggregation(LONG_SUM);

                successes += approximateAggregationWithinErrorBound(function, 1, 0.5, sum, 0, builder.build()) ? 1 : 0;
            }

            // Since we used a confidence of 0.5, successes should have a binomial distribution B(n=20, p=0.5)
            assertTrue(binomial.inverseCumulativeProbability(0.01) < successes && successes < binomial.inverseCumulativeProbability(0.99));
        }
    View Full Code Here

    Examples of org.apache.commons.math3.distribution.BinomialDistribution

                }
                if (alternativeHypothesis == null) {
                    throw new NullArgumentException();
                }

                final BinomialDistribution distribution = new BinomialDistribution(numberOfTrials, probability);
                switch (alternativeHypothesis) {
                    case GREATER_THAN:
                        return 1 - distribution.cumulativeProbability(numberOfSuccesses - 1);
                    case LESS_THAN:
                        return distribution.cumulativeProbability(numberOfSuccesses);
                    case TWO_SIDED:
                        int criticalValueLow = 0;
                        int criticalValueHigh = numberOfTrials;
                        double pTotal = 0;

                        while (true) {
                            double pLow = distribution.probability(criticalValueLow);
                            double pHigh = distribution.probability(criticalValueHigh);

                            if (pLow == pHigh) {
                                pTotal += 2 * pLow;
                                criticalValueLow++;
                                criticalValueHigh--;
    View Full Code Here

    Examples of org.apache.commons.math3.distribution.BinomialDistribution

                if (Math.abs(approx - actual) <= error) {
                    inRange++;
                }
            }

            BinomialDistribution binomial = new BinomialDistribution(numberOfRuns, getConfidence());
            int lowerBound = binomial.inverseCumulativeProbability(0.01);
            int upperBound = binomial.inverseCumulativeProbability(0.99);
            assertTrue(lowerBound < inRange && inRange < upperBound, String.format("%d out of %d passed. Expected [%d, %d]", inRange, numberOfRuns, lowerBound, upperBound));
        }
    View Full Code Here

    Examples of org.apache.commons.math3.distribution.BinomialDistribution

          }
          lastTotalTrainCount = totalTrainCount;
          lastTestCount = testCount;
          int totalNew = testCount + newTrainInGen;

          IntegerDistribution dist = new BinomialDistribution(random, totalNew, TEST_FRACTION);
          double probability;
          if (testCount < dist.getNumericalMean()) {
            probability = dist.cumulativeProbability(testCount);
          } else {
            probability = 1.0 - dist.cumulativeProbability(testCount);
          }
          log.info("Probability of observing {} as {} sample of {}: {}",
                   testCount, TEST_FRACTION, totalNew, probability);
          assertTrue(probability >= 0.001);
        }
    View Full Code Here

    Examples of org.apache.commons.math3.distribution.BinomialDistribution

                }
                if (alternativeHypothesis == null) {
                    throw new NullArgumentException();
                }

                final BinomialDistribution distribution = new BinomialDistribution(numberOfTrials, probability);
                switch (alternativeHypothesis) {
                    case GREATER_THAN:
                        return 1 - distribution.cumulativeProbability(numberOfSuccesses - 1);
                    case LESS_THAN:
                        return distribution.cumulativeProbability(numberOfSuccesses);
                    case TWO_SIDED:
                        int criticalValueLow = 0;
                        int criticalValueHigh = numberOfTrials;
                        double pTotal = 0;

                        while (true) {
                            double pLow = distribution.probability(criticalValueLow);
                            double pHigh = distribution.probability(criticalValueHigh);

                            if (pLow == pHigh) {
                                pTotal += 2 * pLow;
                                criticalValueLow++;
                                criticalValueHigh--;
    View Full Code Here

    Examples of org.apache.commons.math3.distribution.BinomialDistribution

            BinomialDistributionTest testInstance = new BinomialDistributionTest();
            int[] densityPoints = testInstance.makeDensityTestPoints();
            double[] densityValues = testInstance.makeDensityTestValues();
            int sampleSize = 1000;
            int length = TestUtils.eliminateZeroMassPoints(densityPoints, densityValues);
            BinomialDistribution distribution = (BinomialDistribution) testInstance.makeDistribution();
            double[] expectedCounts = new double[length];
            long[] observedCounts = new long[length];
            for (int i = 0; i < length; i++) {
                expectedCounts[i] = sampleSize * densityValues[i];
            }
            randomData.reSeed(1000);
            for (int i = 0; i < sampleSize; i++) {
              int value = randomData.nextBinomial(distribution.getNumberOfTrials(),
                      distribution.getProbabilityOfSuccess());
              for (int j = 0; j < length; j++) {
                  if (value == densityPoints[j]) {
                      observedCounts[j]++;
                  }
              }
    View Full Code Here

    Examples of org.apache.commons.math3.distribution.BinomialDistribution

                if (Math.abs(approx - actual) <= error) {
                    inRange++;
                }
            }

            BinomialDistribution binomial = new BinomialDistribution(numberOfRuns, getConfidence());
            int lowerBound = binomial.inverseCumulativeProbability(0.01);
            int upperBound = binomial.inverseCumulativeProbability(0.99);
            assertTrue(lowerBound < inRange && inRange < upperBound, String.format("%d out of %d passed. Expected [%d, %d]", inRange, numberOfRuns, lowerBound, upperBound));
        }
    View Full Code Here
    TOP
    Copyright © 2018 www.massapi.com. All rights reserved.
    All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.