Conteúdo do Curso
A Arte do Teste A/B
A Arte do Teste A/B
Teste de Shapiro
O Teste de Shapiro é um teste estatístico utilizado para testar a hipótese de uma distribuição normal. Ele compara a distribuição dos dados com uma distribuição normal.
A hipótese nula pressupõe que os dados estão distribuídos normalmente. Se o valor-p for inferior ao nível de significância (abaixo de 0,05), então a hipótese nula é rejeitada.
Nesse caso, podemos argumentar que os dados não estão distribuídos normalmente (a hipótese alternativa é aceita).
Vamos executar o Teste de Shapiro para as primeiras colunas dos grupos de controle e teste ao mesmo tempo:
# Import libraries import pandas as pd from scipy.stats import shapiro # 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=';') # Do the Shapiro test for the control sample stat_control, p_control = shapiro(df_control['Impression']) print('Control group: ') print('Stat: %.4f, p-value: %.4f' % (stat_control, p_control)) # Define the distribution form if p_control > 0.05: print('Control group is likely to normal distribution') else: print('Control group is NOT likely to normal distribution') # Do the Shapiro test for the test sample stat_test, p_test = shapiro(df_test['Impression']) print('Test group: ') print('Stat: %.4f, p-value: %.4f' % (stat_test, p_test)) # Define the distribution form if p_test > 0.05: print('Control group is likely to normal distribution') else: print('Control group is NOT likely to normal distribution')
Ótimo! Obtivemos dois resultados.
Quanto maior o valor da Estatística, mais evidências encontramos a favor de uma distribuição normal. O valor-p em ambos os grupos é alto (maior que 0,05), o que significa que aceitamos a hipótese nula.
Ambas as colunas são distribuídas normalmente.
Nota
Se tivermos mais de 5.000 observações, é melhor usar o teste de Kolmogorov-Smirnov. Seu uso é semelhante ao teste de Shapiro.
Obrigado pelo seu feedback!