smile.stat.hypothesis

## Class TTest

• java.lang.Object
• smile.stat.hypothesis.TTest

• ```public class TTest
extends java.lang.Object```
Student's t test. A t-test is any statistical hypothesis test in which the test statistic has a Student's t distribution if the null hypothesis is true. It is applied when the population is assumed to be normally distributed but the sample sizes are small enough that the statistic on which inference is based is not normally distributed because it relies on an uncertain estimate of standard deviation rather than on a precisely known value.

Among the most frequently used t tests are:

• A test of whether the mean of a normally distributed population has a value specified in a null hypothesis.
• A test of the null hypothesis that the means of two normally distributed populations are equal. Given two data sets, each characterized by its mean, standard deviation and number of data points, we can use some kind of t test to determine whether the means are distinct, provided that the underlying distributions can be assumed to be normal. All such tests are usually called Student's t tests, though strictly speaking that name should only be used if the variances of the two populations are also assumed to be equal; the form of the test used when this assumption is dropped is sometimes called Welch's t test. There are different versions of the t test depending on whether the two samples are
• unpaired, independent of each other (e.g., individuals randomly assigned into two groups, measured after an intervention and compared with the other group),
• or paired, so that each member of one sample has a unique relationship with a particular member of the other sample (e.g., the same people measured before and after an intervention).
If the calculated p-value is below the threshold chosen for statistical significance (usually 0.05 or 0.01 level), then the null hypothesis which usually states that the two groups do not differ is rejected in favor of an alternative hypothesis, which typically states that the groups do differ.
• A test of whether the slope of a regression line differs significantly from 0.
• ### Field Summary

Fields
Modifier and Type Field and Description
`double` `df`
The degree of freedom of t-statistic.
`java.lang.String` `method`
A character string indicating what type of test was performed.
`double` `pvalue`
p-value
`double` `t`
t-statistic
• ### Method Summary

All Methods
Modifier and Type Method and Description
`static TTest` ```test(double[] x, double mean)```
Independent one-sample t-test whether the mean of a normally distributed population has a value specified in a null hypothesis.
`static TTest` ```test(double[] x, double[] y)```
Test if the arrays x and y have significantly different means.
`static TTest` ```test(double[] x, double[] y, boolean equalVariance)```
Test if the arrays x and y have significantly different means.
`static TTest` ```test(double r, int df)```
Test whether the Pearson correlation coefficient, the slope of a regression line, differs significantly from 0.
`static TTest` ```testPaired(double[] x, double[] y)```
Given the paired arrays x and y, test if they have significantly different means.
`java.lang.String` `toString()`
• ### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`
• ### Field Detail

• #### method

`public final java.lang.String method`
A character string indicating what type of test was performed.
• #### df

`public final double df`
The degree of freedom of t-statistic.
• #### t

`public final double t`
t-statistic
• #### pvalue

`public final double pvalue`
p-value
• ### Method Detail

• #### toString

`public java.lang.String toString()`
Overrides:
`toString` in class `java.lang.Object`
• #### test

```public static TTest test(double[] x,
double mean)```
Independent one-sample t-test whether the mean of a normally distributed population has a value specified in a null hypothesis. Small values of p-value indicate that the array has significantly different mean.
• #### test

```public static TTest test(double[] x,
double[] y)```
Test if the arrays x and y have significantly different means. The data arrays are assumed to be drawn from populations with unequal variances. Small values of p-value indicate that the two arrays have significantly different means.
• #### test

```public static TTest test(double[] x,
double[] y,
boolean equalVariance)```
Test if the arrays x and y have significantly different means. Small values of p-value indicate that the two arrays have significantly different means.
Parameters:
`equalVariance` - true if the data arrays are assumed to be drawn from populations with the same true variance. Otherwise, The data arrays are allowed to be drawn from populations with unequal variances.
• #### testPaired

```public static TTest testPaired(double[] x,
double[] y)```
Given the paired arrays x and y, test if they have significantly different means. Small values of p-value indicate that the two arrays have significantly different means.
• #### test

```public static TTest test(double r,
int df)```
Test whether the Pearson correlation coefficient, the slope of a regression line, differs significantly from 0. Small values of p-value indicate a significant correlation.
Parameters:
`r` - the Pearson correlation coefficient.
`df` - the degree of freedom. df = n - 2, where n is the number of samples used in the calculation of r.