Im Bereich des digitalen Marketings wird täglich eine PDCA mit verschiedenen Maßnahmen durchgeführt. In einem solchen Prozess kann es schwierig sein, die Wirkung der Maßnahmen einfach durch Vergleichen der Größe der Zahlen genau zu überprüfen. Unter dem Gesichtspunkt, wie das Wissen über Statistiken auf bessere Analyse- und Verbesserungsvorschläge angewendet werden kann, arbeitete ich an einer Fallstudie unter Verwendung der Methode der statistischen Tests.
Dieses Mal geht es darum, das Vorhandensein oder Fehlen signifikanter Unterschiede in den Ergebnissen von A / B-Tests auf einer Website zu überprüfen (unter der Annahme eines Signifikanzniveaus von 0,05). Wir haben den Chi-Quadrat-Test (Unabhängigkeitstest) angewendet, der häufig zur Überprüfung der Wirksamkeit von A / B-Tests verwendet wird, und für die Daten auf Kaggles "Audacity Ab Testing" verwiesen. https://www.kaggle.com/samtyagi/audacity-ab-testing
Importieren Sie zunächst die Bibliothek und laden Sie die Daten.
import math
import numpy as np
import pandas as pd
import scipy.stats
df=pd.read_csv("homepage_actions.csv")
df.head()
Die Erklärung jeder Spalte ist wie folgt. Zeitstempel: Zugriff auf Datum und Uhrzeit id: Benutzer-ID Gruppe: Kontrollgruppe ist Kontrolle, Testgruppe ist Experiment Aktion: Klicken Sie, wenn Sie darauf klicken, und zeigen Sie es an, wenn es gerade gesehen wurde
Aggregieren Sie dann die Daten. Lassen Sie uns die Gesamtzahl für jede Gruppe erhalten.
group=df.groupby('group').count()
group
Darüber hinaus aggregiert die Pivot-Tabelle die Anzahl der Klicks für jede Gruppe.
pd.pivot_table(df,index='group',columns='action',values=['group','action'],aggfunc='count')
Die Klickrate jeder Gruppe beträgt Kontrollgruppe: 932 ÷ 4264 = 0,21857410881801126 Testgruppe: 928/3924 = 0,2364937410805302 Es ist ersichtlich, dass die Klickrate selbst in der Testgruppe höher ist.
Kann man sagen, dass die Testgruppe eine deutlich höhere Klickrate hat? Lassen Sie uns mit dem Chi-Quadrat-Test überprüfen. Verwenden Sie für Python die Funktion chi2_contingency in scipy.stats.
data=np.matrix([[932,3332],[928,2996]])
chi2,p,ddof,expected=scipy.stats.chi2_contingency(data,correction=False)
print("Chi-Quadrat-Wert:", chi2)
print("p-Wert:", p)
print("Freiheitsgrad:", ddof)
print("Erwartete Frequenz:", expected)
Bei Betrachtung der Ausgabeergebnisse war der p-Wert, der eine signifikante Wahrscheinlichkeit darstellt, höher als 0,05. In diesem Fall wird die Nullhypothese "Es gibt keinen signifikanten Unterschied zwischen den beiden Stichproben" nicht zurückgewiesen. Dies bedeutet, dass die Testgruppe keine wesentlich höhere Klickrate aufweist. Sie können sehen, dass es nicht möglich ist, anhand der Größe einfacher Zahlen zu beurteilen.
In einigen Fällen ist es möglicherweise nicht angebracht, allein anhand der Klickrate zu beurteilen, ob eine Maßnahme gut oder schlecht ist. Es scheint jedoch, dass die Analyse mit einer solchen Methode als Bewertungsmaterial für wirksamere Maßnahmen verwendet werden kann.
Recommended Posts