Verständnisproblem beim Binomialtest: binom.test()

Allgemeine Statistik mit R, die Test-Methode ist noch nicht bekannt, ich habe noch keinen Plan!

Moderatoren: EDi, jogo

Antworten
Tobias_4711
Beiträge: 3
Registriert: Do Jul 11, 2019 2:10 pm

Verständnisproblem beim Binomialtest: binom.test()

Beitrag von Tobias_4711 »

Hallo, bei der Durchführung eines Binomialtest habe ich ein Verständnisproblem:

Ich führe 3 Binomialtests durch mit folgendem R Befehl:

Code: Alles auswählen

> binom.test(k, n, p, conf.level=1-alpha)
Dabei halte ich folgende Parameter konstant:
  • n = 4000
  • p = 0.05
  • Alpha = 0.10
Der einzige Parameter, den ich ändere ist k (Anzahl der Erfolge). Für diesen setze ich 176, 177 und 178 ein. Bei 176 Erfolgen ist mein p-value unter Alpha (0.08 < 0.10). Somit kann ich H1 nicht verwerfen und muss H0 verwerfen. Das ist konsistent mit dem Konfidenzintervall für die empirische Verteilung: p=0.05 nicht in [0.038; 0.049].

Code: Alles auswählen

> binom.test(176, 4000, 0.05, conf.level=0.90)

   Exact binomial test

data:  176 and 4000
number of successes = 176, number of trials = 4000, p-value = 0.08168
alternative hypothesis: true probability of success is not equal to 0.05
90 percent confidence interval:
 0.03878960 0.04971186
sample estimates:
probability of success 
                 0.044 
Analog: Bei 178 Erfolgen ist auch alles konsistent: (p-value=0.1186 > 0.1=Alpha) -> H1 wiederlegt und H0 gilt. Gleichzeitig liegt p=0.05 im Konfidenzintervall [0.0393; 0.0502]

Code: Alles auswählen

> binom.test(178, 4000, 0.05, conf.level=0.90)

   Exact binomial test

data:  178 and 4000
number of successes = 178, number of trials = 4000, p-value = 0.1186
alternative hypothesis: true probability of success is not equal to 0.05
90 percent confidence interval:
 0.03926050 0.05024034
sample estimates:
probability of success 
                0.0445  
Bei 177 Erfolgen sind die Welten nicht konsistent: p-value = 0.1024 > Alpha (=0.10), ABER: p=0.05 ist NICHT im Konfidenzintervall [0.03902502; 0.04997612]

Code: Alles auswählen

> binom.test(177, 4000, 0.05, conf.level=0.90)

   Exact binomial test

data:  177 and 4000
number of successes = 177, number of trials = 4000, p-value = 0.1024
alternative hypothesis: true probability of success is not equal to 0.05
90 percent confidence interval:
 0.03902502 0.04997612
sample estimates:
probability of success 
               0.04425 
Kann mir das jemand erklären? Vielen Dank im Voraus an alle, die sich damit beschäftigen! Ich checks ned :?: :cry:
Tobias_4711
Beiträge: 3
Registriert: Do Jul 11, 2019 2:10 pm

Re: Verständnisproblem beim Binomialtest: binom.test()

Beitrag von Tobias_4711 »

Hallo,

ich frage mich, ob mein Post überhaupt verständlich ist... über irgendein Feedback der Leser würde ich mich freuen. Ich bin nämlich noch nicht weitergekommen. Danke!
Athomas
Beiträge: 768
Registriert: Mo Feb 26, 2018 8:19 pm

Re: Verständnisproblem beim Binomialtest: binom.test()

Beitrag von Athomas »

über irgendein Feedback der Leser würde ich mich freuen.
Ja was soll ich sagen - so ein bisschen den Anschein eines Luxusproblems hat das schon :) !

So, noch was zur Sache: mir hat sich durch Rechen-Experimente der Eindruck aufgedrängt, dass die Grundlage der Berechnungen für den p-value der hypothetische Mittelwert 0.05 ist, während das Konfidenzintervall vom gemessenen Mittelwert (z.B. 177/4000) ausgeht...

Du hast also einen Fall am Rande des Universums konstruiert, in dem der Messwert unter den jeweiligen (unterschiedlichen) Annahmen im Konfidenzintervall um den hypothetischen Mittelwert liegt - aber umgekehrt nicht :( !
Tobias_4711
Beiträge: 3
Registriert: Do Jul 11, 2019 2:10 pm

Re: Verständnisproblem beim Binomialtest: binom.test()

Beitrag von Tobias_4711 »

Zunächst ein großes Danke an Athomas sich mit dem Thema zu beschäftigen.

Offensichtlich gilt für ein Konfidenzintervall, welches mit 90% Sicherheit sagt, ob die Anzahl der Beobachteten Erfolge zu einer Binomialverteilung mit der W'keit p gehören unterschiedlich vom Konfidenzintervall, welches mit 90% Sicherheit für ein Experiment (d.h. gegeben nur n und k) sagt, in welchem Intervall p liegt.

Zur Berechnung: Das Konfidenzintervall, welches R angibt, ist hier zu finden: Binomial proportion confidence interval (Wikipedia)
unter "Clopper–Pearson interval".

Danke an alle Leser. Jetzt kann ich wieder ruhig schlafen (auch wenn die Tatsache immer noch irgendwie komisch ist).
bigben
Beiträge: 2771
Registriert: Mi Okt 12, 2016 9:09 am

Re: Verständnisproblem beim Binomialtest: binom.test()

Beitrag von bigben »

Hallo Tobias!

Zur Relativierung des Problems sei auf die Vielzahl möglicher Vorschläge zur Konstruktion von Konfidenzintervallen für binomiale Fragestellungen in Deinem Link zur Wikipedia verwiesen. Wenn jetzt die eine in R umgesetzte Option einmal eine Grenze bei 0,04997 zieht, wo Du sie gerne bei 0,05 gehabt hättest (wieviele Versuche brauchst Du, bis ein Wahrscheinlichkeitsunterschied von 0,00003 relevant wird?), wird vielleicht Athomas' Formulierung "Luxusproblem" leichter nachvollziehbar.

Tatsächlich hast Du aber augenscheinlich sehr viel schwerwiegendere Verständnisprobleme:
Somit kann ich H1 nicht verwerfen und muss H0 verwerfen
In der NHST wird nie überprüft, ob die H1 verworfen werden sollte. Es wird immer nur geprüft, ob die H0 zu verwerfen ist.
H1 wiederlegt und H0 gilt
Die H1 wird nie widerlegt und kein Test stellt je fest, dass die H0 gilt.

und wenn man richtig kleinlich werden will, dann deuten auch Deine Aussagen im letzten Post nicht darauf hin, dass Du die Bedeutung eines Konfidenzintervalls wirklich verstanden hast.

Letzteres ist wahrscheinlich unbedeutend, die Aussagen zur Interpretation des Nullhypothesentests führen aber zu erheblichen Fehlinterpretationen von Signifikanztests!

Bitte nicht persönlich nehmen, aber es wäre wichtiger, sich diese Grundlagen nochmal anzuschauen.

LG,
Bernhard
---
Programmiere stets so, dass die Maxime Deines Programmierstils Grundlage allgemeiner Gesetzgebung sein könnte
Antworten