Der Vierfelder  Test      Zurück


Der Vierfeldertest = Quadratisch praktisch gut.

Ein einfaches , aber sehr wichtiges Werkzeug zur statistischen Bewertung von Merkmalen in 2 Gruppen. Wenn man den Vierfeldertest begriffen hat , dann hat man schon sehr viel in Sachen medizinische Statistik begriffen.

Für dieses Programm brauchen Sie 4 Textboxen , 2 Textareas , 5 Befehlsfelder, 1 Togglebutton.

Siehe screenshot

Wenn Sie das Beispiel weglassen , können Sie das Programm deutlich vereinfachen !!

Die Theorie dazu

Der Vierfeldertest vergleicht die Wahrscheinlichkeit zweier Binominalverteilungen. Er wird auch als Chi-Quadrat-Vierfeldertest bezeichnet.

Um ihn zu verstehen braucht man einen einfache Tabelle :


Ereignis

Nicht-Ereignis ( Komplement )

Summe

Stichprobe 1

a

b

a+b

Stichprobe 2

c

d

c+d

Summe

a+c

b+d

n



Ausgangshypothese H null : Die Wahrscheinlichkeiten p1 und p2 sind gleich.

Gegenhypothese H alternativ : Die Wahrscheinlichkeiten p1 und p2 sind ungleich.

Die Prüfsumme für diese Hypothese wird wie folgt berechnet :

CHIquadrat = n * ( a*d – b*c)^2 / ( a+b) * (c+d) * ( a+c) * (b + d)



Bei der üblichen Annahme einer Irrtumswahrscheinlichkeit von p < 0,05 liegt der kritische Entscheidungswert für CHI-Quadrat bei 3.841. Errechnet sich ein Wert von CHI-Quadrat der kleiner als 3.841 ist, dann besteht in den Gruppen bezüglich des untersuchten Merkmals kein signifkanter Unterschied. Errechnet sich ein Wert von CHI-Quadrat der größer als 3.841 ist, dann besteht in den Gruppen bezüglich des untersuchten Merkmals ein signifkanter Unterschied.



Der Programmcode lautet :

' ' Gambas class file

PUBLIC SUB Button1_Click()

ME.Close

END

PUBLIC SUB Button2_Click()

textbox1.Text = ""

textbox2.Text = ""

textbox3.Text = ""

textbox4.Text = ""

textarea2.Text = ""

END



PUBLIC SUB Button3_Click()

' Rem Fehlerroutine bei leeren Feldern einbauen

DIM N1 AS Float

DIM N2 AS Float

DIM M1 AS Float

DIM M2 AS Float

DIM R1 AS Float

DIM NN AS Float

DIM N AS Float

DIM E1 AS Float

DIM MM AS Float

DIM E2 AS Float

DIM R2 AS Float

DIM E3 AS Float

DIM E4 AS Float

DIM D1 AS Float

DIM C1 AS Float

DIM D2 AS Float

DIM C2 AS Float

DIM D3 AS Float

DIM C3 AS Float

DIM D4 AS Float

DIM C4 AS Float

DIM C AS Float

DIM S AS Float

DIM P AS Float



textarea2.Text = ""

N1 = Val(textbox1.Text)

N2 = Val(textbox2.Text)

M1 = Val(textbox3.Text)

M2 = Val(textbox4.Text)

'ERWARTUNGSWERT EN1

R1 = N1 + M1

NN = N1 + N2

N = N1 + N2 + M1 + M2

E1 = R1 * NN / N

textarea2.Text = textarea2.Text & "Erwartungswert E1 =" & Str(E1) & Chr(13) & Chr(10)

'Rem ERWARTUNGSWERT EN2

MM = M1 + M2

E2 = R1 * MM / N

textarea2.Text = textarea2.Text & "Erwartungswert E2 =" & Str(E2) & Chr(10) & Chr(13)

'Rem ERWARTUNGSWERT EN3

R2 = N2 + M2

E3 = R2 * NN / N

textarea2.Text = textarea2.Text & "Erwartungswert E3 =" & Str(E3) & Chr(13) & Chr(10)

'Rem ERWARTUNGSWERT EN4

E4 = R2 * MM / N

textarea2.Text = textarea2.Text & "Erwartungswert E4 =" & Str(E4) & Chr(13) & Chr(10)

' Rem PROBE=0?

S = E1 + E2 + E3 + E4

P = S - N

textarea2.Text = textarea2.Text & "Probe" & Str(S) & "-" & Str(N) & "=" & Str(P) & "=0?" & Chr(13) & Chr(10)

' Rem CHI^2

D1 = (N1 - E1) ^ 2

C1 = D1 / E1

D2 = (M1 - E2) ^ 2

C2 = D2 / E2

D3 = (N2 - E3) ^ 2

C3 = D3 / E3

D4 = (M2 - E4) ^ 2

C4 = D4 / E4

C = C1 + C2 + C3 + C4

textarea2.Text = textarea2.Text & "CHI-QUADRAT=" & Str(C) & Chr(13) & Chr(10)

IF C - 3.841 > 0 THEN textarea2.Text = textarea2.Text & "Bei P=0.05 besteht ein signifikanter Unterschied"

IF C - 3.841 <= 0 THEN textarea2.Text = textarea2.Text & "Bei P=0.05 besteht kein signifikanter Unterschied "

END

PUBLIC SUB Button4_Click()

Textbox1.text = "20"

Textbox2.text = "70"

Textbox3.text = "70"

Textbox4.text = "25"

Textarea2.text = ""

END

PUBLIC SUB ToggleButton1_Click()

DIM Help AS String

IF TextArea1.Visible = FALSE THEN

ToggleButton1.Text = "Info weglöschen"

Help = "R.Hoffmann " & Chr(13) & Chr(10)

Help = Help & "http://www.madeasy.de" & Chr(13) & Chr(10)

Help = Help & "rho54@gmx.de"

TextArea1.Visible = TRUE

TextArea1.text = Help

ELSE

TextArea1.Visible = FALSE

ToggleButton1.Text = "Info anschauen"

ENDIF

END

PUBLIC SUB Button5_Click()

textarea2.Text = "Der Vierfeldertest dient dazu, "

textarea2.Text = textarea2.Text & "die Haeufigkeit eines Merkmals in zwei" & Chr$(13) & Chr$(10)

textarea2.Text = textarea2.Text & "unabhaengigen Gruppen zu vergleichen " & Chr$(13) & Chr$(10)

textarea2.Text = textarea2.Text & "Beispiel: " & Chr$(13) & Chr$(10)

textarea2.Text = textarea2.Text & "Man befragt 50 Frauen ( GRUPPE 1) , ob sie rauchen oder nicht. " & Chr$(13) & Chr$(10)

textarea2.Text = textarea2.Text & "Dasselbe macht man mit 50 Maennern ( GRUPPE 2). " & Chr$(13) & Chr$(10)

textarea2.Text = textarea2.Text & "Man erhaelt das Ergebnis :" & Chr$(13) & Chr$(10)

textarea2.Text = textarea2.Text & "FRAUEN : 25 Raucher 25 Nichtraucher " & Chr$(13) & Chr$(10)

textarea2.Text = textarea2.Text & "MAENNER: 30 Raucher 20 Nichtraucher " & Chr$(13) & Chr$(10)

textarea2.Text = textarea2.Text & "Kann man anhand dieser repraesentativen Befragung schon sagen, " & Chr$(13) & Chr$(10)

textarea2.Text = textarea2.Text & "ob es mehr Nichtraucher unter den Frauen gibt ?" & Chr$(13) & Chr$(10)

textarea2.Text = textarea2.Text & "Diese Frage beantwortet der Vierfelder Test." & Chr$(13) & Chr$(10)

textarea2.Text = textarea2.Text & "Dazu muss man die Werte beider Gruppen eingeben und " & Chr$(13) & Chr$(10)

textarea2.Text = textarea2.Text & "eine Irrtumswahrscheinlichkeit waehlen. ( Hier p = 0.05 )" & Chr$(13) & Chr$(10)

textarea2.Text = textarea2.Text & "Wollen Sie das Ergebnis testen ? " & Chr$(13) & Chr$(10)

textarea2.Text = textarea2.Text & "Dann druecken Sie auf die Taste SIGNIFIKANZBERECHNUNG !" & Chr$(13) & Chr$(10)

textbox1.Text = "25"

textbox2.Text = "25"

textbox3.Text = "30"

textbox4.Text = "20"

END

PUBLIC SUB Button6_Click()

textarea2.Text = ""

textarea2.Text = "Bei P=0.05 besteht kein signifikanter Unterschied. " & Chr$(13) & Chr$(10)

textarea2.Text = textarea2.Text & "Zwei Schlussfolgerungen kann man aus diesem Ergebnis ziehen : " & Chr$(13) & Chr$(10)

textarea2.Text = textarea2.Text & "---------------------------------------------------------- " & Chr$(13) & Chr$(10)

textarea2.Text = textarea2.Text & "Entweder es gibt tatsaechlich keinen Unterschied ODER" & Chr$(13) & Chr$(10)

textarea2.Text = textarea2.Text & "die Stichproben aus beiden Gruppen waren zu klein" & Chr$(13) & Chr$(10)

textarea2.Text = textarea2.Text & "Probieren Sie dieselben Werte, nur alle mal 10 genommen." & Chr$(13) & Chr$(10)

textarea2.Text = textarea2.Text & "FRAUEN : 250 Raucher 250 Nichtraucher " & Chr$(13) & Chr$(10)

textarea2.Text = textarea2.Text & "MAENNER: 300 Raucher 200 Nichtraucher " & Chr$(13) & Chr$(10)

textarea2.Text = textarea2.Text & "----------------------------------------------------------" & Chr$(13) & Chr$(10)

textarea2.Text = textarea2.Text & "Wollen Sie noch einmal testen ? " & Chr$(13) & Chr$(10)

textarea2.Text = textarea2.Text & "Dann druecken Sie auf die Taste SIGNIFIKANZBERECHNUNG !" & Chr$(13) & Chr$(10)

textbox1.Text = "250"

textbox2.Text = "250"

textbox3.Text = "300"

textbox4.Text = "200"

textarea2.Text = textarea2.Text & "Dann sieht das Ergebnis anders aus. " & Chr$(13) & Chr$(10)

textarea2.Text = textarea2.Text & "Wenn man kleine aber signifikante Unterschiede finden will," & Chr$(13) & Chr$(10)

textarea2.Text = textarea2.Text & "braucht man also grosse Zahlen in den Stichproben."

END



Screenshot:






Links

http://hepatitis-c.de/signi/

http://www.mh-hannover.de/institute/biometrie/JUMBO/bio/vierf.html