**5.3****
****One Sample T-Test** (.NET, C#, CSharp, VB, Visual Basic, F#)

Class **OneSampleTTest** determines
whether a sample from a normal distribution with unknown standard deviation
could have a given mean. For example, suppose we wish to determine whether
the self-esteem of children from a particular school differ from average,
given a known population value of 3.9 on
the Rosenberg Self

As described Section 5.1,
all hypothesis test classes provide two paths for constructing instances
of that type: a parameter-based method and a data-based method. Thus,
you can construct a **OneSampleTTest**
object by explicitly specifying a sample mean (), sample standard deviation
(), sample size
(), and population
mean (), like so:

Code Example – C# t-test

double xbar = 4.0408; double s = .6542; int n = 113; double mu0 = 3.9; var test = new OneSampleTTest( xbar, s, n, mu0 );

Or by supplying a set of sample data, and the necessary
population parameters. For instance, if the sample data is in column
3 of **DataFrame**
df:

Code Example – C# t-test

double mu0 = 3.9; var test = new OneSampleTTest( df[3], mu0 );

In this case, the sample mean, standard deviation, and size are calculated from the given data.

In addition to the properties common to all hypothesis
test objects (Section 5.1),
a **OneSampleTTest** object provides
the following read-only properties:

● Xbar gets the sample mean.

● S gets the sample standard deviation.

● N gets the sample size.

● Mu0 gets the population mean.

● DegreesOfFreedom gets the degrees of freedom.

By default, a **OneSampleTTest**
object performs a two-sided hypothesis test () with . Non-default test parameters
can be specified at the time of construction using constructor overloads,
or after construction using the provided Alpha
and Type properties, like so:

Code Example – C# t-test

test.Alpha = 0.05;

Once you've constructed and configured a **OneSampleTTest** object, you can access
the various test results using the provided properties, as described
in Section 5.1:

Code Example – C# t-test

Console.WriteLine( "t-statistic = " + test.Statistic ); Console.WriteLine( "deg of freedom = " + test.DegreesOfFreedom ); Console.WriteLine( "p-value = " + test.P ); Console.WriteLine( "reject the null hypothesis? " + test.Reject);

The output is:

t-statistic = 2.28786996397591 deg of freedom = 112 p-value = 0.0240223660991041 reject the null hypothesis? True

This indicates that we can reject the null hypotheses (). We can conclude that the children have self-esteem scores significantly different than average.

Finally, remember that the ToString() method returns a formatted string representation of the complete test results:

One Sample t Test ----------------- Sample mean = 4.0408 Sample standard deviation = 0.6542 Sample size = 113 Population mean = 3.9 Computed t statistic: 2.28786996397591, df = 112 Hypothesis type: two-sided Null hypothesis: sample mean = population mean Alt hypothesis: sample mean != population mean P-value: 0.0240223660991041 REJECT the null hypothesis for alpha = 0.05 0.95 confidence interval: 3.91886249658971 4.16273750341029