Link Search Menu Expand Document (external link)

How to do a two-sided hypothesis test for a sample mean (in R)

See all solutions.

Task

Say we have a population whose mean $\mu$ is known. We take a sample $x_1,\ldots,x_n$ and compute its mean, $\bar x$. We then ask whether this sample is significantly different from the population at large, that is, is $\mu=\bar x$?

Related tasks:

Solution

This is a two-sided test with the null hypothesis $H_0:\mu=\bar x$. We choose a value $0\leq\alpha\leq1$ as the probability of a Type I error (false positive, finding we should reject $H_0$ when it’s actually true).

1
2
3
4
5
6
7
8
# Replace these first three lines with the values from your situation.
alpha <- 0.05
pop.mean <- 10
sample <- c( 9, 12, 14, 8, 13 )

# Run a one-sample t-test and print out alpha, the p value,
# and whether the comparison says to reject the null hypothesis.
t.test( sample, mu=pop.mean, conf.level=1-alpha )
1
2
3
4
5
6
7
8
9
10
	One Sample t-test

data:  sample
t = 1.0366, df = 4, p-value = 0.3585
alternative hypothesis: true mean is not equal to 10
95 percent confidence interval:
  7.986032 14.413968
sample estimates:
mean of x 
     11.2 

Although we can deduce the answer to our question from the above output, by comparing the $p$ value with $\alpha$ manually, we can also ask R to do it.

1
2
3
# Is there enough evidence to reject the null hypothesis?
result <- t.test( sample, mu=pop.mean, conf.level=1-alpha )
result$p.value < alpha
1
[1] FALSE

In this case, the sample does not give us enough information to reject the null hypothesis. We would continue to assume that the sample is like the population, $\mu=\bar x$.

Content last modified on 24 July 2023.

See a problem? Tell us or edit the source.

Contributed by Nathan Carter (ncarter@bentley.edu)