Class TDistribution

java.lang.Object
smile.stat.distribution.TDistribution
All Implemented Interfaces:
Serializable, Distribution

public class TDistribution extends Object implements Distribution
Student's t-distribution (or simply the t-distribution) is a probability distribution that arises in the problem of estimating the mean of a normally distributed population when the sample size is small. Student's t-distribution arises when (as in nearly all practical statistical work) the population standard deviation is unknown and has to be estimated from the data. It is the basis of the popular Student's t-tests for the statistical significance of the difference between two sample means, and for confidence intervals for the difference between two population means. The Student's t-distribution is a special case of the generalised hyperbolic distribution.
See Also:
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    final int
    The degree of freedom.
  • Constructor Summary

    Constructors
    Constructor
    Description
    TDistribution(int nu)
    Constructor.
  • Method Summary

    Modifier and Type
    Method
    Description
    double
    cdf(double x)
    Cumulative distribution function.
    double
    cdf2tailed(double x)
    Two-tailed cdf.
    double
    Returns Shannon entropy of the distribution.
    int
    Returns the number of parameters of the distribution.
    double
    logp(double x)
    The density at x in log scale, which may prevents the underflow problem.
    double
    Returns the mean of distribution.
    double
    p(double x)
    The probability density function for continuous distribution or probability mass function for discrete distribution at x.
    double
    quantile(double p)
    The quantile, the probability to the left of quantile is p.
    double
    quantile2tailed(double p)
    Two-tailed quantile.
    double
    Generates a random number following this distribution.
    double
    sd()
    Returns the standard deviation of distribution.
     
    double
    Returns the variance of distribution.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait

    Methods inherited from interface smile.stat.distribution.Distribution

    inverseTransformSampling, likelihood, logLikelihood, quantile, quantile, rand, rejectionSampling
  • Field Details

    • nu

      public final int nu
      The degree of freedom.
  • Constructor Details

    • TDistribution

      public TDistribution(int nu)
      Constructor.
      Parameters:
      nu - degree of freedom.
  • Method Details

    • length

      public int length()
      Description copied from interface: Distribution
      Returns the number of parameters of the distribution. The "length" is in the sense of the minimum description length principle.
      Specified by:
      length in interface Distribution
      Returns:
      The number of parameters.
    • mean

      public double mean()
      Description copied from interface: Distribution
      Returns the mean of distribution.
      Specified by:
      mean in interface Distribution
      Returns:
      The mean.
    • variance

      public double variance()
      Description copied from interface: Distribution
      Returns the variance of distribution.
      Specified by:
      variance in interface Distribution
      Returns:
      The variance.
    • sd

      public double sd()
      Description copied from interface: Distribution
      Returns the standard deviation of distribution.
      Specified by:
      sd in interface Distribution
      Returns:
      The standard deviation.
    • entropy

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

      public String toString()
      Overrides:
      toString in class Object
    • rand

      public double rand()
      Description copied from interface: Distribution
      Generates a random number following this distribution.
      Specified by:
      rand in interface Distribution
      Returns:
      a random number.
    • p

      public double p(double x)
      Description copied from interface: Distribution
      The probability density function for continuous distribution or probability mass function for discrete distribution at x.
      Specified by:
      p in interface Distribution
      Parameters:
      x - a real number.
      Returns:
      the density.
    • logp

      public double logp(double x)
      Description copied from interface: Distribution
      The density at x in log scale, which may prevents the underflow problem.
      Specified by:
      logp in interface Distribution
      Parameters:
      x - a real number.
      Returns:
      the log density.
    • cdf

      public double cdf(double x)
      Description copied from interface: Distribution
      Cumulative distribution function. That is the probability to the left of x.
      Specified by:
      cdf in interface Distribution
      Parameters:
      x - a real number.
      Returns:
      the probability.
    • 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.
      Specified by:
      quantile in interface Distribution
      Parameters:
      p - the probability.
      Returns:
      the quantile.
    • cdf2tailed

      public double cdf2tailed(double x)
      Two-tailed cdf.
      Parameters:
      x - a real number.
      Returns:
      the two-tailed cdf.
    • quantile2tailed

      public double quantile2tailed(double p)
      Two-tailed quantile.
      Parameters:
      p - a probability.
      Returns:
      the two-tailed quantile.