Hypothesis Testing in R Programming

Hypothesis testing is a statistical method used to make inferences about population parameters based on sample data. In R, you can perform various types of hypothesis tests using built-in functions and packages. This lesson explains the details of hypothesis testing in R with an example using a t-test, one of the most common types of hypothesis tests.

In R, you can perform hypothesis testing using the t.test() function.

The t.test() function takes three arguments:

  1. x: The data set for the first sample.
  2. y: The data set for the second sample.
  3. alternative: The type of hypothesis test you want to perform. The possible values are "two.sided", "less", and "greater".

For example, the following code performs a two-sample t-test to determine whether the mean of the first sample is different from the mean of the second sample:

> t.test(x = c(1, 2, 3, 4, 5), y = c(6, 7, 8, 9, 10), alternative = "two.sided")
#Output: Two-sample t-test data: x and y t = -2.236, df = 9, p-value = 0.0476 alternative hypothesis: true difference in means is not equal to 0 95 percent confidence interval: -3.391 0.991 sample estimates: mean of x mean of y 2.5 7.5

The output of the t.test() function shows that the p-value is 0.0476. This means that there is a 4.76% chance of getting the results of the test if the null hypothesis is true. Since the p-value is less than the significance level of 0.05, we reject the null hypothesis and conclude that there is enough evidence to support the claim that the mean of the first sample is different from the mean of the second sample.

Here are some other hypothesis tests that you can perform in R:

  1. wilcox.test(): Performs a Wilcoxon rank-sum test, which is a non-parametric alternative to the t-test.
  2. chisq.test(): Performs a chi-squared test, which is used to test the independence of two variables.
  3. fisher.test(): Performs a Fisher's exact test, which is a more powerful alternative to the chi-squared test when the sample size is small.

Hypothesis Testing Process

State the Hypotheses

  1. Null Hypothesis (H0): This is the default or initial assumption. It typically states that there is no effect or no difference between groups.
  2. Alternative Hypothesis (Ha): This is the claim or hypothesis you want to test. It suggests that there is a significant effect or difference.

Collect and Prepare Data

You'll need a dataset that represents the population or group you want to study.

Select a Significance Level (a)

The significance level (a) is the probability of making a Type I error (rejecting a true null hypothesis). Common values are 0.05 or 0.01.

Choose a Test Statistic and Distribution

The choice of test statistic depends on the type of data and the research question. For example, in a t-test, you use the t-distribution.

Calculate the Test Statistic

This involves performing the appropriate statistical test using R functions and the sample data.

Determine the Critical Region

Based on the chosen significance level (a), find the critical values or critical region of the test statistic distribution.

Compare the Test Statistic to the Critical Region

If the test statistic falls within the critical region, you reject the null hypothesis. If it falls outside the critical region, you fail to reject the null hypothesis.

Draw a Conclusion

Based on the comparison in step 7, you either reject the null hypothesis or fail to reject it. The conclusion depends on the significance level and the test statistic.


Hypothesis testing in R is a statistical method used to assess whether observed data supports or contradicts a specific hypothesis about a population parameter. R provides a wide range of tools and functions to calculate test statistics and p-values, enabling researchers to make informed decisions about the validity of their hypotheses based on sample data.