Documentation

# ttest

One-sample and paired-sample t-test

## Syntax

``h = ttest(x)``
``h = ttest(x,y)``
``h = ttest(x,y,Name,Value)``
``h = ttest(x,m)``
``h = ttest(x,m,Name,Value)``
``````[h,p] = ttest(___)``````
``````[h,p,ci,stats] = ttest(___)``````

## Description

example

````h = ttest(x)` returns a test decision for the null hypothesis that the data in `x` comes from a normal distribution with mean equal to zero and unknown variance, using the one-sample t-test. The alternative hypothesis is that the population distribution does not have a mean equal to zero. The result `h` is `1` if the test rejects the null hypothesis at the 5% significance level, and `0` otherwise.```

example

````h = ttest(x,y)` returns a test decision for the null hypothesis that the data in ```x – y``` comes from a normal distribution with mean equal to zero and unknown variance, using the paired-sample t-test.```

example

````h = ttest(x,y,Name,Value)` returns a test decision for the paired-sample t-test with additional options specified by one or more name-value pair arguments. For example, you can change the significance level or conduct a one-sided test.```

example

````h = ttest(x,m)` returns a test decision for the null hypothesis that the data in `x` comes from a normal distribution with mean `m` and unknown variance. The alternative hypothesis is that the mean is not `m`.```

example

````h = ttest(x,m,Name,Value)` returns a test decision for the one-sample t-test with additional options specified by one or more name-value pair arguments. For example, you can change the significance level or conduct a one-sided test.```

example

``````[h,p] = ttest(___)``` also returns the p-value, `p`, of the test, using any of the input arguments from the previous syntax groups.```

example

``````[h,p,ci,stats] = ttest(___)``` also returns the confidence interval `ci` for the mean of `x`, or of `x – y` for the paired t-test, and the structure `stats` containing information about the test statistic.```

## Examples

collapse all

Load the sample data. Create a vector containing the third column of the stock returns data.

```load stockreturns x = stocks(:,3);```

Test the null hypothesis that the sample data comes from a population with mean equal to zero.

`[h,p,ci,stats] = ttest(x)`
```h = 1 ```
```p = 0.0106 ```
```ci = 2×1 -0.7357 -0.0997 ```
```stats = struct with fields: tstat: -2.6065 df: 99 sd: 1.6027 ```

The returned value `h = 1` indicates that `ttest` rejects the null hypothesis at the 5% significance level.

Load the sample data. Create a vector containing the third column of the stock returns data.

```load stockreturns x = stocks(:,3);```

Test the null hypothesis that the sample data are from a population with mean equal to zero at the 1% significance level.

`h = ttest(x,0,'Alpha',0.01)`
```h = 0 ```

The returned value `h = 0` indicates that `ttest` does not reject the null hypothesis at the 1% significance level.

Load the sample data. Create vectors containing the first and second columns of the data matrix to represent students’ grades on two exams.

```load examgrades x = grades(:,1); y = grades(:,2);```

Test the null hypothesis that the pairwise difference between data vectors `x` and `y` has a mean equal to zero.

`[h,p] = ttest(x,y)`
```h = 0 ```
```p = 0.9805 ```

The returned value of `h = 0` indicates that `ttest` does not reject the null hypothesis at the default 5% significance level.

Load the sample data. Create vectors containing the first and second columns of the data matrix to represent students’ grades on two exams.

```load examgrades x = grades(:,1); y = grades(:,2);```

Test the null hypothesis that the pairwise difference between data vectors `x` and `y` has a mean equal to zero at the 1% significance level.

`[h,p] = ttest(x,y,'Alpha',0.01)`
```h = 0 ```
```p = 0.9805 ```

The returned value of `h = 0` indicates that `ttest` does not reject the null hypothesis at the 1% significance level.

Load the sample data. Create a vector containing the first column of the students' exam grades data.

```load examgrades x = grades(:,1);```

Test the null hypothesis that sample data comes from a distribution with mean `m = 75`.

`h = ttest(x,75)`
```h = 0 ```

The returned value of `h = 0` indicates that `ttest` does not reject the null hypothesis at the 5% significance level.

Load the sample data. Create a vector containing the first column of the students’ exam grades data.

```load examgrades x = grades(:,1);```

Test the null hypothesis that the data comes from a population with mean equal to 65, against the alternative that the mean is greater than 65.

`h = ttest(x,65,'Tail','right')`
```h = 1 ```

The returned value of `h = 1` indicates that `ttest` rejects the null hypothesis at the 5% significance level, in favor of the alternate hypothesis that the data comes from a population with a mean greater than 65.

## Input Arguments

collapse all

Sample data, specified as a vector, matrix, or multidimensional array. `ttest` performs a separate t-test along each column and returns a vector of results. If `y` sample data is specified, `x` and `y` must be the same size.

Data Types: `single` | `double`

Sample data, specified as a vector, matrix, or multidimensional array. If `y` sample data is specified, `x` and `y` must be the same size.

Data Types: `single` | `double`

Hypothesized population mean, specified as a scalar value.

Data Types: `single` | `double`

### Name-Value Pair Arguments

Specify optional comma-separated pairs of `Name,Value` arguments. `Name` is the argument name and `Value` is the corresponding value. `Name` must appear inside quotes. You can specify several name and value pair arguments in any order as `Name1,Value1,...,NameN,ValueN`.

Example: `'Tail','right','Alpha',0.01` conducts a right-tailed hypothesis test at the 1% significance level.

Significance level of the hypothesis test, specified as the comma-separated pair consisting of `'Alpha'` and a scalar value in the range (0,1).

Example: `'Alpha',0.01`

Data Types: `single` | `double`

Dimension of the input matrix along which to test the means, specified as the comma-separated pair consisting of `'Dim'` and a positive integer value. For example, specifying `'Dim',1` tests the column means, while `'Dim',2` tests the row means.

Example: `'Dim',2`

Data Types: `single` | `double`

Type of alternative hypothesis to evaluate, specified as the comma-separated pair consisting of `'Tail'` and one of the following.

 `'both'` Test the alternative hypothesis that the population mean is not `m`. `'right'` Test the alternative hypothesis that the population mean is greater than `m`. `'left'` Test the alternative hypothesis that the population mean is less than `m`.

Example: `'Tail','right'`

## Output Arguments

collapse all

Hypothesis test result, returned as `1` or `0`.

• If `h` `= 1`, this indicates the rejection of the null hypothesis at the `Alpha` significance level.

• If `h` `= 0`, this indicates a failure to reject the null hypothesis at the `Alpha` significance level.

p-value of the test, returned as a scalar value in the range [0,1]. `p` is the probability of observing a test statistic as extreme as, or more extreme than, the observed value under the null hypothesis. Small values of `p` cast doubt on the validity of the null hypothesis.

Confidence interval for the true population mean, returned as a two-element vector containing the lower and upper boundaries of the 100 × (1 – `Alpha`)% confidence interval.

Test statistics, returned as a structure containing the following:

• `tstat` — Value of the test statistic.

• `df` — Degrees of freedom of the test.

• `sd` — Estimated population standard deviation. For a paired t-test, `sd` is the standard deviation of `x – y`.

collapse all

### One-Sample t-Test

The one-sample t-test is a parametric test of the location parameter when the population standard deviation is unknown.

The test statistic is

`$t=\frac{\overline{x}-\mu }{s/\sqrt{n}},$`

where $\overline{x}$ is the sample mean, `μ` is the hypothesized population mean, s is the sample standard deviation, and n is the sample size. Under the null hypothesis, the test statistic has Student’s t distribution with n – 1 degrees of freedom.

### Multidimensional Array

A multidimensional array has more than two dimensions. For example, if `x` is a 1-by-3-by-4 array, then `x` is a three-dimensional array.

### First Nonsingleton Dimension

The first nonsingleton dimension is the first dimension of an array whose size is not equal to 1. For example, if `x` is a 1-by-2-by-3-by-4 array, then the second dimension is the first nonsingleton dimension of `x`.

## Tips

• Use `sampsizepwr` to calculate:

• The sample size that corresponds to specified power and parameter values;

• The power achieved for a particular sample size, given the true parameter value;

• The parameter value detectable with the specified sample size and power.