Example usage for org.apache.commons.math3.distribution TDistribution TDistribution

List of usage examples for org.apache.commons.math3.distribution TDistribution TDistribution

Introduction

In this page you can find the example usage for org.apache.commons.math3.distribution TDistribution TDistribution.

Prototype

public TDistribution(double degreesOfFreedom) throws NotStrictlyPositiveException 

Source Link

Document

Create a t distribution using the given degrees of freedom.

Usage

From source file:com.freevariable.lancer.stat.Probability.java

public static double studentT(double k, double t) {
    // XXX: sure would be smarter to memoize these
    return (new TDistribution(k)).cumulativeProbability(t);
}

From source file:com.freevariable.lancer.stat.Probability.java

public static double studentTInverse(double alpha, int size) {
    double t = 1 - (alpha / 2);
    // XXX: sure would be smarter to memoize these
    return (new TDistribution((double) size)).cumulativeProbability(t);
}

From source file:info.debatty.jinu.SummaryStatistics.java

private static double calcMeanCI(final SummaryStatistics stats, final double level) {

    try {/*from   ww w  . j a va2 s  .c  om*/
        // Create T Distribution with N-1 degrees of freedom
        TDistribution t_dist = new TDistribution(stats.getN() - 1);
        // Calculate critical value
        double crit_val = t_dist.inverseCumulativeProbability(1.0 - (1 - level) / 2);
        // Calculate confidence interval
        return crit_val * stats.getStandardDeviation() / Math.sqrt(stats.getN());
    } catch (MathIllegalArgumentException e) {
        return Double.NaN;
    }
}

From source file:es.logongas.encuestas.modelo.resultados.InferenciaEstadistica.java

public InferenciaEstadistica(EstadisticaDescriptiva estadisticaDescriptiva, BigDecimal nivelConfianza,
        int numDecimals) {
    this.numDecimals = numDecimals;
    if (nivelConfianza.compareTo(BigDecimal.ZERO) <= 0) {
        throw new IllegalArgumentException("El nivelConfianza debe ser mayor que 0");
    }//  ww w .j a  va2 s  . com
    if (nivelConfianza.compareTo(BigDecimal.ONE) >= 0) {
        throw new IllegalArgumentException("El nivelConfianza debe ser menor que 1");
    }

    TDistribution tDistribution = new TDistribution(estadisticaDescriptiva.getNumMuestras() - 1);
    double t = tDistribution.inverseCumulativeProbability(nivelConfianza.doubleValue());
    BigDecimal delta = new BigDecimal(t * (estadisticaDescriptiva.getDesviacionEstandar().doubleValue()
            / Math.sqrt(estadisticaDescriptiva.getNumMuestras())));

    BigDecimal min = estadisticaDescriptiva.getMedia().subtract(delta).setScale(this.numDecimals,
            RoundingMode.HALF_UP);
    BigDecimal max = estadisticaDescriptiva.getMedia().add(delta).setScale(this.numDecimals,
            RoundingMode.HALF_UP);
    intervaloConfianzaMedia = new IntervaloConfianza(min, max, nivelConfianza);

}

From source file:cz.cuni.mff.d3s.spl.interpretation.WelchTestInterpretation.java

/** {@inheritDoc} */
@Override//ww  w  .j a  va  2 s  . co m
public ComparisonResult compare(DataSnapshot left, DataSnapshot right) {
    BenchmarkRunSummary leftSummary = computeMergedStatistic(left);
    BenchmarkRunSummary rightSummary = computeMergedStatistic(right);

    statistic = getStatistic(leftSummary, rightSummary);

    double freedomDeg = getDegreesOfFreedom(leftSummary, rightSummary);
    distribution = new TDistribution(freedomDeg);

    return new DistributionBasedComparisonResult(statistic, distribution);
}

From source file:cz.cuni.mff.d3s.spl.interpretation.WelchTestInterpretation.java

/** {@inheritDoc} */
@Override/* www .j a va  2  s  . c  o m*/
public ComparisonResult compare(DataSnapshot data, double value) {
    BenchmarkRunSummary snapshotSummary = computeMergedStatistic(data);

    statistic = getStatistic(snapshotSummary, value);

    double freedomDeg = snapshotSummary.getSize() - 1;
    distribution = new TDistribution(freedomDeg);

    return new DistributionBasedComparisonResult(statistic, distribution);
}

From source file:jasima.core.random.continuous.DblTDist.java

public DblTDist(double degreesOfFreedom) {
    super();
    setDistribution(new TDistribution(degreesOfFreedom));
}

From source file:iad.stat.distribution.DistributionCalc.java

private void calculateStudent(boolean twoTailed) {
    tstud = new TDistribution(degreesOfFredom);
    if (twoTailed) {
        studentPValue = (1 - tstud.cumulativeProbability(Math.abs(zScore))) * 2;
    } else {/*from   w w w.  j a  v  a2 s.  c  o m*/
        studentPValue = 1 - tstud.cumulativeProbability(Math.abs(zScore));
    }
}

From source file:PCC.java

public double pvalue(double corel, double n) {
    double t = Math.abs(corel * Math.sqrt((n - 2.0) / (1.0 - (corel * corel))));
    TDistribution tdist = new TDistribution(n - 2);
    double pvalue = 2 * (1.0 - tdist.cumulativeProbability(t));
    return pvalue;
}

From source file:it.cnr.jatecs.indexing.tsr.ConfWeight.java

private ConfidenceInterval p(int xt, int n) {
    //this Z value is the result of phi.inverseCumulativeProbability(0.5+0.95/2.0);
    //on a normally distributed prob. mass function N(0,1)
    double Z2 = 3.84;
    RealDistribution phi = null;//  w  w w .ja  v a 2  s  .  c  om
    if (n < 30) {
        //the # degrees of freedom of a t-student is n-1
        //in the article is not specified what happens if n=1
        //I will here assume it becomes 1
        int degrees_freedom = Math.max(n - 1, 1);
        phi = new TDistribution(degrees_freedom);

        //Z for confindence interval of 0.95
        double Z = phi.inverseCumulativeProbability(0.5 + 0.95 / 2.0);
        Z2 = Z * Z;
    }

    double p = (xt + 0.5 * Z2) / (n + Z2);

    double amplitude = 0.5 * Z2 * Math.sqrt((p * (1.0 - p)) / (n + Z2));

    ConfidenceInterval interval = new ConfidenceInterval();
    interval.center = p;
    interval.amplitude = amplitude;
    interval.range_min = p - amplitude;
    interval.range_max = p + amplitude;

    return interval;
}