Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprende Desafío: Definir métrica | U-Test
El Arte del A/B Testing

book
Desafío: Definir métrica

Tarea

Swipe to start coding

En esta tarea, debe añadir la métrica 'Ganancia media por clic' a las muestras de control y de prueba. Después, debe trazar los histogramas de las nuevas columnas y marcar los valores medios de las métricas en el gráfico.

  1. Importe las bibliotecas.
  2. Leer los archivos.
  3. Defina la métrica 'Ganancia media por clic' y añádala a ambas muestras.
    1. Añade una línea con el valor medio.

Solución

# Import libraries
import matplotlib.pyplot as plt
import pandas as pd
import seaborn as sns

# 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 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']

# Ploting hist
sns.histplot(df_control['Average Earnings per Click'], color="#1e2635", label="AEC of Control Group")
sns.histplot(df_test['Average Earnings per Click'], color="#ff8a00", label="AEC of Test Group")

# Add mean line
plt.axvline(df_control['Average Earnings per Click'].mean(), color="#1e2635", linestyle='dashed', linewidth=1, label='Mean Control Group')
plt.axvline(df_test['Average Earnings per Click'].mean(), color="#ff8a00", linestyle='dashed', linewidth=1, label='Mean Test Group')

# Sign the axes
plt.xlabel('Average Earnings per Click')
plt.ylabel('Frequency')
plt.legend()
plt.title('Histogram of Average Earnings per Click')

# Show the result
plt.show()
¿Todo estuvo claro?

¿Cómo podemos mejorarlo?

¡Gracias por tus comentarios!

Sección 5. Capítulo 2
# Import libraries
___ ___ as plt
___ ___ as pd
___ ___ as sns

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

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

# Ploting hist
sns.histplot(df_control['Average Earnings per Click'], color="#1e2635", label="AEC of Control Group")
sns.histplot(df_test['Average Earnings per Click'], color="#ff8a00", label="AEC of Test Group")

# Add mean line
plt___(df_control['Average Earnings per Click']___, color="#1e2635", linestyle='dashed', linewidth=1, label='Mean Control Group')
plt___(df_test['Average Earnings per Click']___, color="#ff8a00", linestyle='dashed', linewidth=1, label='Mean Test Group')

# Sign the axes
plt.xlabel('Average Earnings per Click')
plt.ylabel('Frequency')
plt.legend()
plt.title('Histogram of Average Earnings per Click')

# Show the result
plt.show()
toggle bottom row
some-alt