Ist es möglich, eine Leistungsanalyse für einen zweiseitigen Kolmogorov-Smirnov-Test in R durchzuführen?
Ich teste mit ks.test (), ob sich zwei empirische Verteilungen unterscheiden, und möchte eine Leistungsanalyse hinzufügen.
Ich konnte in R keine integrierten Leistungsanalysen für KS-Tests finden. Irgendwelche Vorschläge?
Bearbeiten : Dies sind zufällig generierte Verteilungen, die meinen Daten sehr nahe kommen (mit wahren Stichprobengrößen und geschätzten Abklingraten für Exponentialverteilungen).
set.seed(100)
x <- rexp(64, rate=0.34)
y <- rexp(54,rate=0.37)
#K-S test: Do x and y come from same distribution?
ks.test(x,y)
Diese Daten sind Maße für die Körpergröße in zwei verschiedenen Gruppen. Ich möchte zeigen, dass die beiden Gruppen im Wesentlichen die gleiche Verteilung haben, wurde aber von einem Mitarbeiter gefragt, ob ich die Möglichkeit hätte, dies anhand der Stichprobengröße zu sagen. Ich habe hier zufällig aus einer Exponentialverteilung gezogen, aber diese liegen nahe an den realen Daten.
Bisher habe ich gesagt, dass es keinen signifikanten Unterschied in diesen Verteilungen gibt, basierend auf dem zweiseitigen KS-Test. Ich habe auch die beiden Verteilungen aufgezeichnet. Wie kann ich zeigen, dass ich angesichts der Stichprobengrößen und Zerfallsraten für x und y die Möglichkeit habe, eine solche Aussage zu treffen?
Antworten:
Das Finden von Macht gegen exponentielle Skalenverschiebungsalternativen ist ziemlich einfach.
Ich weiß jedoch nicht, dass Sie Werte verwenden sollten, die aus Ihren Daten berechnet wurden , um herauszufinden, wie hoch die Leistung gewesen sein könnte. Diese Art der Post-hoc-Leistungsberechnung führt tendenziell zu kontraintuitiven (und möglicherweise irreführenden) Schlussfolgerungen.
Macht ist wie das Signifikanzniveau ein Phänomen, mit dem Sie sich vorher befassen. Sie würden ein A-priori-Verständnis (einschließlich Theorie, Argumentation oder früherer Studien) verwenden, um eine vernünftige Reihe von Alternativen und eine wünschenswerte Effektgröße zu bestimmen
Sie können auch eine Vielzahl anderer Alternativen in Betracht ziehen (z. B. können Sie das Exponential in eine Gammafamilie einbetten, um die Auswirkungen von mehr oder weniger verzerrten Fällen zu berücksichtigen).
Die üblichen Fragen, die man durch eine Leistungsanalyse beantworten könnte, sind:
1) Wie hoch ist die Leistung für eine bestimmte Stichprobengröße bei einer bestimmten Effektgröße oder einer Reihe von Effektgrößen *?
2) Wie groß ist bei gegebener Stichprobengröße und Leistung ein Effekt erkennbar?
3) Welche Stichprobengröße wäre bei einer gewünschten Leistung für eine bestimmte Effektgröße erforderlich?
* (wobei hier "Effektgröße" allgemein gemeint ist und beispielsweise ein bestimmtes Verhältnis von Mitteln oder Mittelwertdifferenzen sein kann, das nicht unbedingt standardisiert ist).
Natürlich haben Sie bereits eine Stichprobengröße, also sind Sie nicht in Fall (3). Sie könnten vernünftigerweise Fall (2) oder Fall (1) in Betracht ziehen.
Ich würde Fall (1) vorschlagen (der auch eine Möglichkeit bietet, mit Fall (2) umzugehen).
Um einen Ansatz für Fall (1) zu veranschaulichen und zu sehen, wie er sich auf Fall (2) bezieht, betrachten wir ein spezifisches Beispiel mit:
Skalenverschiebungsalternativen
exponentielle Populationen
Stichprobengrößen in den beiden Stichproben 64 und 54
Da die Stichprobengrößen unterschiedlich sind, müssen wir den Fall berücksichtigen, in dem die relative Streuung in einer der Stichproben sowohl kleiner als auch größer als 1 ist (wenn sie dieselbe Größe hätten, könnten Symmetrieüberlegungen es ermöglichen, nur eine Seite zu berücksichtigen). Da sie jedoch nahezu gleich groß sind, ist der Effekt sehr gering. Legen Sie in jedem Fall den Parameter für eines der Beispiele fest und variieren Sie das andere.
Was man also tut ist:
Vorweg:
So führen Sie die Berechnungen durch:
In R habe ich Folgendes getan:
was die folgende Potenz "Kurve" ergibt
Die x-Achse liegt auf einer logarithmischen Skala, die y-Achse ist die Ablehnungsrate.
Hier ist es schwer zu sagen, aber die schwarzen Punkte sind links etwas höher als rechts (das heißt, es gibt etwas mehr Leistung, wenn das größere Sample den kleineren Maßstab hat).
Unter Verwendung des inversen normalen cdf als Transformation der Ablehnungsrate können wir die Beziehung zwischen der transformierten Ablehnungsrate und log kappa (kappa ist
s
im Diagramm, aber die x-Achse ist logarithmisch skaliert) nahezu linear machen (außer nahe 0) ), und die Anzahl der Simulationen war hoch genug, dass das Rauschen sehr gering ist - wir können es für die gegenwärtigen Zwecke fast ignorieren.Wir können also nur die lineare Interpolation verwenden. Im Folgenden sind ungefähre Effektgrößen für 50% und 80% Leistung bei Ihren Stichprobengrößen dargestellt:
Die Effektgrößen auf der anderen Seite (größere Gruppe hat einen kleineren Maßstab) sind nur geringfügig davon abweichen (können eine geringfügig kleinere Effektgröße aufnehmen), aber es macht wenig Unterschied, so dass ich nicht auf den Punkt eingehen werde.
Der Test wird also einen wesentlichen Unterschied (von einem Skalenverhältnis von 1) feststellen, aber keinen kleinen.
Nun zu einigen Kommentaren: Ich denke nicht, dass Hypothesentests für die zugrunde liegende Frage von Interesse besonders relevant sind ( sind sie ziemlich ähnlich? ), Und folglich sagen uns diese Leistungsberechnungen nichts, was für diese Frage direkt relevant ist.
Ich denke, Sie sprechen diese nützlichere Frage an, indem Sie vorab angeben, was Ihrer Meinung nach "im Wesentlichen dasselbe" tatsächlich operativ bedeutet. Dies sollte - rational zu einer statistischen Aktivität verfolgt - zu einer aussagekräftigen Analyse der Daten führen.
quelle
Da Kolmogorov-Smirnov nicht parametrisch ist, kann per Definition keine anwendbare Leistungsanalyse durchgeführt werden. Um eine Schätzung zu erhalten, müssen Sie ein Hintergrundmodell annehmen (und somit von der nichtparametrischen Welt ablenken ...) und es verwenden, um eines der folgenden zu berechnen: Stichprobengröße, MDE oder Leistung (dh Sie fixiere / wähle zwei und berechne die dritte).
quelle