Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lära Challenge: Another Normality Test | U-Test
The Art of A/B Testing

book
Challenge: Another Normality Test

Uppgift

Swipe to start coding

Now, let's do the Shapiro test for our columns with the metric 'Average Earnings per Click'. Are the metrics normally distributed?

  1. Define the metric.
  2. Do the Shapiro test.

Lösning

# Import libraries
from scipy.stats import shapiro
import pandas as pd

# Read .csv files
df_control = pd.read_csv('https://codefinity-content-media.s3.eu-west-1.amazonaws.com/c3b98ad3-420d-403f-908d-6ab8facc3e28/ab_control.csv', delimiter=';')
df_test = pd.read_csv('https://codefinity-content-media.s3.eu-west-1.amazonaws.com/c3b98ad3-420d-403f-908d-6ab8facc3e28/ab_test.csv', delimiter=';')

# Define the metric
df_test['Average Earnings per Click'] = df_test['Earning'] / df_test['Click']
df_control['Average Earnings per Click'] = df_control['Earning'] / df_control['Click']

# Testing normality
stat_control, p_control = shapiro(df_control['Average Earnings per Click'])
print("Control group: ")
print("Stat: %.4f, p-value: %.4f" % (stat_control, p_control))
if p_control > 0.05:
print('Control group is likely to normal distribution')
else:
print('Control group is NOT likely to normal distribution')
stat_control, p_control = shapiro(df_test['Average Earnings per Click'])
print("Test group: ")
print("Stat: %.4f, p-value: %.4f" % (stat_control, p_control))
if p_control > 0.05:
print('Test group is likely to normal distribution')
else:
print('Test group is NOT likely to normal distribution')

Var allt tydligt?

Hur kan vi förbättra det?

Tack för dina kommentarer!

Avsnitt 5. Kapitel 3
# Import libraries
from scipy.stats import ___
import pandas as pd

# Read .csv files
df_control = pd.read_csv('https://codefinity-content-media.s3.eu-west-1.amazonaws.com/c3b98ad3-420d-403f-908d-6ab8facc3e28/ab_control.csv', delimiter=';')
df_test = pd.read_csv('https://codefinity-content-media.s3.eu-west-1.amazonaws.com/c3b98ad3-420d-403f-908d-6ab8facc3e28/ab_test.csv', delimiter=';')

# Define the metric
df_test['Average Earnings per Click'] = df_test['Earning'] / df_test['Click']
df_control['Average Earnings per Click'] = df_control['Earning'] / df_control['Click']

# Testing normality
stat_control, p_control = ___(df_control['Average Earnings per Click'])
print("Control group: ")
print("Stat: %.4f, p-value: %.4f" % (stat_control, p_control))
if p_control > 0.05:
print('Control group is likely to normal distribution')
else:
print('Control group is NOT likely to normal distribution')
stat_control, p_control = ___(df_test['Average Earnings per Click'])
print("Test group: ")
print("Stat: %.4f, p-value: %.4f" % (stat_control, p_control))
if p_control > 0.05:
print('Test group is likely to normal distribution')
else:
print('Test group is NOT likely to normal distribution')

Fråga AI

expand
ChatGPT

Fråga vad du vill eller prova någon av de föreslagna frågorna för att starta vårt samtal

some-alt