Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Learn Conduct a t-test | Statistical Testing
Learning Statistics with Python

book
Conduct a t-test

A company wants to determine if there is a significant difference in the productivity levels of developers who work from home versus those who work in the office. Good thing you already know a t-test can help with it.

The company has two independent developer teams: one works remotely, and the other works from the office. You've been provided with two files, 'work_from_home.csv' and 'work_from_office.csv', which contain the monthly task completion counts for each developer.

Task is to conduct a t-test. The company wants to know whether developers who work from the office are more productive than home workers. If so, they will also force the second team to work from the office. In case of home workers being more productive, the company will not make any changes. So the desired alternative hypothesis is "The mean productivity of office workers is greater than that of home workers".

Let's check if the variances are the same:

import pandas as pd

home_workers = pd.read_csv('https://codefinity-content-media.s3.eu-west-1.amazonaws.com/a849660e-ddfa-4033-80a6-94a1b7772e23/Testing2.0/work_from_home.csv').squeeze()
office_workers = pd.read_csv('https://codefinity-content-media.s3.eu-west-1.amazonaws.com/a849660e-ddfa-4033-80a6-94a1b7772e23/Testing2.0/work_from_office.csv').squeeze()
# Printing sample standard deviations
print('Home workers std:', home_workers.std())
print('Office workers std:', office_workers.std())
1234567
import pandas as pd home_workers = pd.read_csv('https://codefinity-content-media.s3.eu-west-1.amazonaws.com/a849660e-ddfa-4033-80a6-94a1b7772e23/Testing2.0/work_from_home.csv').squeeze() office_workers = pd.read_csv('https://codefinity-content-media.s3.eu-west-1.amazonaws.com/a849660e-ddfa-4033-80a6-94a1b7772e23/Testing2.0/work_from_office.csv').squeeze() # Printing sample standard deviations print('Home workers std:', home_workers.std()) print('Office workers std:', office_workers.std())
copy

The second standard deviation is twice as much as the first, so variances differ. Recall the function ttest_ind to perform a t-test.

python
st.ttest_ind(a, b, equal_var=True, alternative='two-sided')
Task

Swipe to start coding

  1. Import scipy.stats using the st alias.
  2. Conduct a t-test with the following setup:
    • Samples: home_workers, office_workers;
    • Alternative hypothesis: office > home;
    • No homogeneity of variances.

Solution

import pandas as pd
import scipy.stats as st

home_workers = pd.read_csv('https://codefinity-content-media.s3.eu-west-1.amazonaws.com/a849660e-ddfa-4033-80a6-94a1b7772e23/Testing2.0/work_from_home.csv').squeeze()
office_workers = pd.read_csv('https://codefinity-content-media.s3.eu-west-1.amazonaws.com/a849660e-ddfa-4033-80a6-94a1b7772e23/Testing2.0/work_from_office.csv').squeeze()

# Apply t-test
tstat, pvalue = st.ttest_ind(office_workers, home_workers, equal_var=False, alternative='greater')

if pvalue > 0.05:
# Check if we should support or not the null hypothesis if p_test > 0.05:
print('We support the null hypothesis, the mean values are equal')
else:
print('We reject the null hypothesis, the mean values are different')

Everything was clear?

How can we improve it?

Thanks for your feedback!

Section 6. Chapter 7
single

single

import pandas as pd
import ___ as st

home_workers = pd.read_csv('https://codefinity-content-media.s3.eu-west-1.amazonaws.com/a849660e-ddfa-4033-80a6-94a1b7772e23/Testing2.0/work_from_home.csv').squeeze()
office_workers = pd.read_csv('https://codefinity-content-media.s3.eu-west-1.amazonaws.com/a849660e-ddfa-4033-80a6-94a1b7772e23/Testing2.0/work_from_office.csv').squeeze()

# Apply t-test
tstat, pvalue = st.___(___, ___, equal_var=___, ___)

if pvalue > 0.05:
# Check if we should support or not the null hypothesis if p_test > 0.05:
print('We support the null hypothesis, the mean values are equal')
else:
print('We reject the null hypothesis, the mean values are different')

Ask AI

expand

Ask AI

ChatGPT

Ask anything or try one of the suggested questions to begin our chat

We use cookies to make your experience better!
some-alt