Documentation of 'smile.stat.distribution.BinomialDistribution' Java class
BinomialDistribution
smile.stat.distribution

Class BinomialDistribution

  • All Implemented Interfaces:
    Distribution


    public class BinomialDistribution
    extends DiscreteDistribution
    The binomial distribution is the discrete probability distribution of the number of successes in a sequence of n independent yes/no experiments, each of which yields success with probability p. Such a success/failure experiment is also called a Bernoulli experiment or Bernoulli trial. In fact, when n = 1, the binomial distribution is a Bernoulli distribution. The probability of getting exactly k successes in n trials is given by the probability mass function:

    Pr(K = k) = nCk pk (1-p)n-k

    where nCk is n choose k.

    It is frequently used to model number of successes in a sample of size n from a population of size N. Since the samples are not independent (this is sampling without replacement), the resulting distribution is a hypergeometric distribution, not a binomial one. However, for N much larger than n, the binomial distribution is a good approximation, and widely used.

    Binomial distribution describes the number of successes for draws with replacement. In constrast, the hypergeometric distribution describes the number of successes for draws without replacement.

    Although Binomial distribtuion belongs to exponential family, we don't implement DiscreteExponentialFamily interface here since it is impossible and meaningless to estimate a mixture of Binomial distributions.

    See Also:
    HyperGeometricDistribution
    • Constructor Summary

      Constructors 
      Constructor and Description
      BinomialDistribution(int n, double p)
      Constructor.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method and Description
      double cdf(double k)
      Cumulative distribution function.
      double entropy()
      Shannon entropy of the distribution.
      int getN()
      Returns the parameter n, the number of experiments.
      double getProb()
      Returns the probability of success.
      double logp(int k)
      The probability mass function in log scale.
      double mean()
      The mean of distribution.
      int npara()
      The number of parameters of the distribution.
      double p(int k)
      The probability mass function.
      double quantile(double p)
      The quantile, the probability to the left of quantile is p.
      double rand()
      This function generates a random variate with the binomial distribution.
      double sd()
      The standard deviation of distribution.
      java.lang.String toString() 
      double var()
      The variance of distribution.
      • Methods inherited from class java.lang.Object

        equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
    • Constructor Detail

      • BinomialDistribution

        public BinomialDistribution(int n,
                                    double p)
        Constructor.
        Parameters:
        p - the probability of success.
        n - the number of experiments.
    • Method Detail

      • getProb

        public double getProb()
        Returns the probability of success.
      • getN

        public int getN()
        Returns the parameter n, the number of experiments.
      • npara

        public int npara()
        Description copied from interface: Distribution
        The number of parameters of the distribution.
      • mean

        public double mean()
        Description copied from interface: Distribution
        The mean of distribution.
      • var

        public double var()
        Description copied from interface: Distribution
        The variance of distribution.
      • sd

        public double sd()
        Description copied from interface: Distribution
        The standard deviation of distribution.
      • entropy

        public double entropy()
        Description copied from interface: Distribution
        Shannon entropy of the distribution.
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object
      • cdf

        public double cdf(double k)
        Description copied from interface: Distribution
        Cumulative distribution function. That is the probability to the left of x.
      • quantile

        public double quantile(double p)
        Description copied from interface: Distribution
        The quantile, the probability to the left of quantile is p. It is actually the inverse of cdf.
      • rand

        public double rand()
        This function generates a random variate with the binomial distribution. Uses down/up search from the mode by chop-down technique for n*p < 55, and patchwork rejection method for n*p ≥ 55. For n*p < 1.E-6 numerical inaccuracy is avoided by poisson approximation.

DataMelt 3.0 © DataMelt by jWork.ORG

You see the box below because you did not login.