Passgenauigkeit für sehr große Stichproben

12

Ich sammle jeden Tag sehr große Stichproben (> 1.000.000) von kategorialen Daten und möchte, dass die Daten zwischen den Tagen "signifikant" unterschiedlich aussehen, um Fehler bei der Datenerfassung zu erkennen.

Ich dachte, ein guter Fit-Test (insbesondere ein G-Test) wäre eine gute Passform (Wortspiel beabsichtigt) dafür. Die erwartete Verteilung ergibt sich aus der Verteilung des Vortages.

Aber weil meine Stichproben so groß sind, hat der Test eine sehr hohe Leistung und gibt viele falsch positive Ergebnisse ab. Das heißt, selbst eine sehr geringe tägliche Schwankung ergibt einen p-Wert nahe Null.

Am Ende multiplizierte ich meine Teststatistik mit einer Konstanten (0,001), was die gute Interpretation der Datenabtastung mit dieser Rate bietet. Dieser Artikel scheint mit diesem Ansatz übereinzustimmen. Sie sagen, dass:

Das Chi-Quadrat ist mit Stichproben von etwa 100 bis 2500 Personen am zuverlässigsten

Ich bin auf der Suche nach weiteren maßgeblichen Kommentaren zu diesem Thema. Oder vielleicht alternative Lösungen für falsch-positive Ergebnisse, wenn Sie statistische Tests mit großen Datenmengen durchführen.

tskuzzy
quelle
3
Das ist eine gute Frage. Es gibt jedoch keine objektiv stützbare Grundlage für Ihren Ad-hoc- Ansatz. Das bedeutet nicht, dass es schlecht abschneidet - aber es deutet stark darauf hin, dass es bessere Verfahren gibt. Um sie zu finden, wäre es hilfreich, wenn Sie diese Frage bearbeiten könnten, um zu erklären, welche Arten von Fehlern Sie zu identifizieren versuchen, einschließlich wie groß sie sein könnten, wie viele von ihnen auftreten könnten und welche Konsequenzen (a) sich daraus ergeben, dass Sie dies nicht tun einige der Fehler identifizieren und (b) korrekte Daten als Fehler kennzeichnen.
whuber
2
Aus mathematischer Sicht ist ein Anpassungstest mit sehr großem vollkommen in Ordnung - nur ist die entsprechende Nullhypothese nicht sehr interessant: Warum sollten Sie eine "Ja / Nein" -Frage stellen, wenn Sie können? eine "wie viel" antwort bekommen? In Ihrem Fall können Sie täglich die Änderung des Anteils für jede Kategorie abschätzen, jeweils ein Konfidenzintervall hinzufügen und prüfen, ob sie nicht einen vordefinierten Toleranzbereich um 0 erreichen.n
Michael M
Ihre Verwendung von Begriffen wie "signifikant" und "falsch positiv" scheint im Widerspruch zur statistischen Bedeutung dieser Begriffe zu stehen, insbesondere wenn Sie den Test richtig machen *. Ich schlage vor, dass Sie diese Begriffe vermeiden, es sei denn, Sie verwenden sie ausschließlich im technischen Sinne. Ihr grundlegendes Problem ist die Verwendung von Hypothesentests in Situationen, in denen dies möglicherweise keinen Sinn ergibt. Was ist Ihre eigentliche Frage des Interesses?* (Insbesondere, wenn Sie den Vortag als Grundgesamtheit verwenden, ist dies nicht richtig, wenn Sie dessen Variabilität nicht berücksichtigen - im Allgemeinen ist es genauso variabel wie heute)
berücksichtigen Glen_b Setzen Sie Monica

Antworten:

4

Der Test liefert das korrekte Ergebnis. Die Verteilungen sind nicht von Tag zu Tag gleich. Das nützt Ihnen natürlich nichts. Das Problem, mit dem Sie konfrontiert sind, ist seit langem bekannt. Siehe: Karl Pearson und RA Fisher zu statistischen Tests: Ein Austausch aus der Natur von 1935

Stattdessen können Sie auf frühere Daten zurückblicken (entweder von Ihnen oder von einem anderen Ort) und die Verteilung der täglichen Änderungen für jede Kategorie abrufen. Dann prüfen Sie, ob die aktuelle Änderung bei dieser Verteilung wahrscheinlich aufgetreten ist. Es ist schwierig, eine genauere Antwort zu geben, ohne die Daten und Arten von Fehlern zu kennen. Dieser Ansatz scheint jedoch besser für Ihr Problem geeignet zu sein.

Flasche
quelle
4

Lassen Sie uns weitermachen und die heilige Kuh von 5% töten.

Sie haben (richtig) darauf hingewiesen, dass es um die überschwängliche Kraft des Tests geht. Möglicherweise möchten Sie es auf eine relevantere Potenz neu kalibrieren, beispielsweise einen traditionelleren Wert von 80%:

  1. Entscheiden Sie, welche Effektgröße Sie erkennen möchten (z. B. 0,2% Verschiebung)
  2. Entscheide dich für die Kraft, die gut genug für dich ist, damit sie nicht überfordert wird (zB 1β=80%)
  3. Arbeiten Sie von der bestehenden Theorie zurück des Pearson-Tests zurück, um das Niveau zu bestimmen, das Ihren Test praktisch machen würde.

Angenommen, Sie haben 5 Kategorien mit gleichen Wahrscheinlichkeiten, , und Ihre Alternative ist p + δ / p1=p2=p3=p4=p5=0.2p+δ/n=(0.198,0.202,0.2,0.2,0.2)n=106δ=(2,+2,0,0,0)k=

λ=jδj2/pj=4/0.2+4/0.2=40
λN(μ=λ+k=44,σ2=2(k+2λ)=168)44+13Φ1(0.8)=44+130.84=54.91χ42
Prob[χ42>54.91]=3.31011

χ2

Beachten Sie jedoch, dass die Näherungswerte sowohl für die Null als auch für die Alternative in den Endbereichen möglicherweise schlecht funktionieren. Weitere Informationen hierzu finden Sie in dieser Diskussion .

StasK
quelle
2

In diesen Fällen hat mein Professor vorgeschlagen, Cramer's V zu berechnen, das ein Assoziationsmaß ist, das auf der Chi-Quadrat-Statistik basiert. Dies sollte Ihnen die Kraft geben und Ihnen bei der Entscheidung helfen, ob der Test überempfindlich ist. Ich bin mir jedoch nicht sicher, ob Sie das V mit der Art von Statistik verwenden können, die die G2-Tests zurückgeben.

Dies sollte die Formel für V sein:

ϕc=χ2n(k1)

nkk

wal
quelle
0

Ein Ansatz wäre, die Anpassungsgütetests aussagekräftiger zu machen, indem sie an kleineren Datenblöcken durchgeführt werden.

Sie können Ihre Daten von einem bestimmten Tag in z. B. 1000 Blöcke mit jeweils 1000 Stichproben aufteilen und für jeden Block einen individuellen Anpassungstest durchführen, wobei die erwartete Verteilung durch den vollständigen Datensatz des vorherigen Tages angegeben wird. Halten Sie das Signifikanzniveau für jeden einzelnen Test auf dem von Ihnen verwendeten Niveau (z. B.α=0,05). Suchen Sie dann nach signifikanten Abweichungen der Gesamtzahl der positiven Tests von der erwarteten Anzahl der falsch-positiven (unter der Nullhypothese, dass es keinen Unterschied in den Verteilungen gibt, ist die Gesamtzahl der positiven Tests mit Parameter binomial verteilt)α).

Sie können eine gute Blockgröße finden, indem Sie Datensätze von zwei Tagen verwenden, bei denen Sie davon ausgehen können, dass die Verteilung gleich ist, und feststellen, welche Blockgröße eine Häufigkeit positiver Tests ergibt, die in etwa gleich ist α (dh welche Blockgröße Ihren Test davon abhält, falsche Unterschiede zu melden).

CJ Stoneking
quelle
Könnten Sie bitte erläutern, in welchem ​​Sinne dieser Ansatz "sinnvoller" wäre?
Whuber
Es ist statistische Signifikanz gegen reale Signifikanz. Durch die Verwendung von 10 ^ 3 anstelle von 10 ^ 6 Stichproben wird die Leistung eines einzelnen Tests absichtlich verringert, sodass die Ablehnung der Nullhypothese in der Regel einem großen Mangel an Übereinstimmung entspricht. Dies macht das Ergebnis eines einzelnen Tests aussagekräftiger, da dem OP "geringe tägliche Schwankungen" nicht wichtig sind. Bei 10 ^ 6 Stichproben kann der Test aufgrund geringfügiger Unterschiede immer H0 zurückweisen, sodass nicht klar ist, ob ein Testergebnis aussagekräftige Informationen enthält.
CJ Stoneking
1
Vielen Dank: Ihr Kommentar wirft interessante und wichtige Fragen auf, die meiner Meinung nach die eigentliche Grundfrage betreffen. Nämlich, wie sollte man Unterschiede zwischen Daten messen, um Fehler zu erkennen, und wie groß würde der Unterschied sein? Obwohl Ihre Antwort unter bestimmten Umständen angemessen sein mag, scheint es unwahrscheinlich, dass sie viele der Arten von Fehlern, die in Daten auftreten können, effektiv erkennt, und lässt auch die (natürliche) Frage offen, welche Größe von Datenblöcken verwendet werden sollte.
whuber
@whuber, can the problem be redefined in such a way so that the null and its deviation is data size invariant but seeks some qualitative representation?
Vass