Keine Freiheitsgrade von Chi-Quadrat bei Monte-Carlo-Simulation

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

Moderatoren: EDi, jogo

ajoscha
Beiträge: 7
Registriert: Do Mär 11, 2021 3:23 pm

Keine Freiheitsgrade von Chi-Quadrat bei Monte-Carlo-Simulation

Beitrag von ajoscha »

Hallo,

für meine Masterarbeit möchte ich mehrere Chi-Quadrat-Tests rechnen. Da die Voraussetzungen des "normalen", asymptotischen Chi-Quadrat-Tests verletzt sind (erwartete Häufigkeiten < 5), die Datenmenge für Fishers exakten Test jedoch zu groß ist, lasse ich R eine Monte-Carlo-Simulation durchführen. Das schaut dann so aus:

chisq.test(daten$geschlecht,
daten$raucher*in_ja_nein, simulate.p.value = T)

Allerdings steht im Output des Tests dann unter "df", also den Freiheitsgraden "NA". Schalte ich die Simulation aus, werden die Freiheitsgrade angezeigt. Habt ihr eine Ahnung, woran das liegt? Der Zitationsstandard, an den ich gebunden bin (APA) erwartet in Zusammenhang mit der Angabe eines Werts von Chi-Quadrat eigentlich auch die Nennung der Freiheitsgrade. Wenn ich diese nun nicht nenne, würde ich wenigstens gerne theoretisch begründen können, warum ich sie nicht mit angebe. Habt vielen Dank für eure Unterstützung!

Mit besten Grüßen
Ajoscha
schubbiaschwilli
Beiträge: 253
Registriert: Di Jun 27, 2017 12:09 pm

Re: Keine Freiheitsgrade von Chi-Quadrat bei Monte-Carlo-Simulation

Beitrag von schubbiaschwilli »

Gude!

Was meinst du genau mit Chi-Quadrat-Test? Gibt mehrere; siehe z.Bsp. https://de.wikipedia.org/wiki/Chi-Quadrat-Test

Dank&Gruß
Schubbiaschwilli
ajoscha
Beiträge: 7
Registriert: Do Mär 11, 2021 3:23 pm

Re: Keine Freiheitsgrade von Chi-Quadrat bei Monte-Carlo-Simulation

Beitrag von ajoscha »

Hallo, vielen Dank für deine Rückmeldung. Ich meine den Chi-Quadrat-Unabhängigkeitstest. Ich möchte untersuchen, ob ein Zusammenhang zwischen zwei nominalskalierten Merkmalen besteht.
bigben
Beiträge: 2771
Registriert: Mi Okt 12, 2016 9:09 am

Re: Keine Freiheitsgrade von Chi-Quadrat bei Monte-Carlo-Simulation

Beitrag von bigben »

Eine MonteCarlo Simulation kommt ohne Verteilungsmaßnahmen aus. df brauchst Du für die Chi-Quadratverteilung.
---
Programmiere stets so, dass die Maxime Deines Programmierstils Grundlage allgemeiner Gesetzgebung sein könnte
ajoscha
Beiträge: 7
Registriert: Do Mär 11, 2021 3:23 pm

Re: Keine Freiheitsgrade von Chi-Quadrat bei Monte-Carlo-Simulation

Beitrag von ajoscha »

Vielen Dank! Kannst du das noch ein bisschen ausführen? Wieso habe ich bei asymptotischem Chi-Quadrat Freiheitsgrade und bei Monte-Carlo nicht?
bigben
Beiträge: 2771
Registriert: Mi Okt 12, 2016 9:09 am

Re: Keine Freiheitsgrade von Chi-Quadrat bei Monte-Carlo-Simulation

Beitrag von bigben »

Hallo ajoscha,

das ist ein bisschen schwer zu erklären wenn man nicht weiß, mit welchem Vorwissen über beide Verfahren Du fragst. Vielleicht soviel: Du berechnest für Deine Daten einen χ²-Wert und um den zu beurteilen musst Du ihn mit irgendwas vergleichen. Im klassischen Fall funktioniert das approximativ mit der χ²-Verteilung. Die Wikipedia schreibt darüber:
In probability theory and statistics, the chi-square distribution (also chi-squared or χ2-distribution) with k degrees of freedom is the distribution of a sum of the squares of k independent standard normal random variables.
Du siehst also, dass die Definition der Chiquadrat-Verteilung an den Begriff der Freiheitsgrade gebunden ist. Deshalb braucht man immer die Freiheitsgrade für den klassischen Test. Man braucht immer Freiheitsgrade, wenn man auf diese Verteilung zugreifen will.

Beim Monte-Carlo-Verfahren spielt diese Verteilung überhaupt keine Rolle. Man nutzt die Rechenpower des Computers um beispielsweise 2000 zufällige Verteilungen zu erstellen und vergleicht dann das χ² aus Deinen Daten mit den χ² der 2000 simulierten Daten. Haben wir dafür jetzt irgendwo Freiheitsgrade gebraucht? Nö. Auch das ist irgendwo approximativ, weil 2000 Zufallsproben ja nicht unendlich viele oder alle denkbaren Zufallsproben sind, aber Du kannst die Zahl der Zufallsproben im Rahmen der Rechenleistung bzw. akzeptablen Rechendauer nahezu beliebig steigern.

Als der χ²-Test Anfang des 20. Jahrhunderts aufkam, da hatte keiner den Nerv, 2000 Varianten Deiner Daten auszuwürfeln. Deshalb wurde er damals so erstellt, dass man ihn von Hand mit Bleistift, Papier und einem Tabellenbuch rechnen konnte. R kam erst Jahrzehnte später auf.

HTH,
Bernhard


PS: Für den χ²-Test wird es nicht viel helfen, weil man den im Fließtext und ohne eigene Tabelle berichten kann. Aber wenn Du Dich an APA-Format halten musst und vielleicht noch eine Regression zu berichten hast solltest Du wissen, dass es das Paket apaTables gibt:
http://www.statscanbefun.com/apatables
https://journals.sagepub.com/doi/full/1 ... 5918773743
https://cran.r-project.org/web/packages ... index.html
---
Programmiere stets so, dass die Maxime Deines Programmierstils Grundlage allgemeiner Gesetzgebung sein könnte
ajoscha
Beiträge: 7
Registriert: Do Mär 11, 2021 3:23 pm

Re: Keine Freiheitsgrade von Chi-Quadrat bei Monte-Carlo-Simulation

Beitrag von ajoscha »

Hallo Bernhard,

habe wirklich vielen Dank für deine Erklärung. Ich denke du bist genau tief genug eingestiegen, damit ich den Fall als Laie etwas verstehen kann.

Über das Paket apaTables bin ich bereits gestolpert. In der Tat hilft es mir leider nicht besonders viel, da ich fast ausschließlich mit kategorialen Daten arbeite. Die Tabelle möchte ich erstellen, da ich viele Chi-Quadrat-Werte habe und die Daten so übersichtlich darstellen kann.

Danke und viele Grüße
Ajoscha
bigben
Beiträge: 2771
Registriert: Mi Okt 12, 2016 9:09 am

Re: Keine Freiheitsgrade von Chi-Quadrat bei Monte-Carlo-Simulation

Beitrag von bigben »

Hallo ajoscha,

angesichts der gewaltigen Rechenkraft Deines Rechners, findest Du da 2000 Wiederholungen etwas wenig? Wären 20.000 nicht besser? Du kannst das bei Deinen Aufrufen von chisq.test einstellen, wieviele Zufallssamples da gezogen werden. Wenn Du Monte-Carlo-Statistik machst solltest Du den gleichen chisq.test-Aufruf mehrfach hintereinander machen und schauen, ob da hinreichend genau immer das gleiche herauskommt. Wenn nicht, musst Du die Zahl der Zufallsstichproben steigern, bis das Ergebnis stabil genug ist. Soviel muss dann zu Monte Carlo doch noch gesagt werden.

Mit APA hatte ich zweimal im Leben zu tun. Einmal als ein Koautor mir schrieb, ich müsse in meinem Paperentwurf p kursiv schreiben. Anscheinend fordert APA das und er meinte das bedeutet, dass die ganze Welt das so machen muss, auch in nicht psychologischen Journals. Das andere Mal hatte ich erwogen, eine Arbeit in einem Journal einzureichen, dass APA-Style fordert. Nach meinen damaligen Recherchen hätte ich für viel Geld ein dickes Buch kaufen müssen, indem die APA beschreibt, wie sie sich die Darstellung von Statistik denkt. Ich hab da nie was eingereicht. :lol:

LG,
Bernhard
---
Programmiere stets so, dass die Maxime Deines Programmierstils Grundlage allgemeiner Gesetzgebung sein könnte
ajoscha
Beiträge: 7
Registriert: Do Mär 11, 2021 3:23 pm

Re: Keine Freiheitsgrade von Chi-Quadrat bei Monte-Carlo-Simulation

Beitrag von ajoscha »

Hallo Bernhard,

der Hinweis war durchaus wichtig. Ich habe festgestellt, dass die p-Werte bei 2000 Stichproben durchaus schwanken. Mit 1000000 Stichproben hingegen schwanken die Werte nur sehr gering. Es dauert zwei Sekunden, bis R die Ergebnisse ausspuckt, aber das ist verkraftbar.

Zu APA: Du hast sicherlich recht, dass man hier etwas zur Pedanterie neigt. Am Ende sollte es wohl vor allem wichtig sein, dass andere in der Lage sind Texte und Statistiken zu verstehen und zu überprüfen. Dazu braucht man keine überstarren Regeln. Wobei eine gewissen Standardisierung eventuell hilfreich sein kann.

Noch einmal vielen Dank für deine Hilfe, die war wirklich sehr wertvoll.

Viele Grüße
ajoscha
ajoscha
Beiträge: 7
Registriert: Do Mär 11, 2021 3:23 pm

Re: Keine Freiheitsgrade von Chi-Quadrat bei Monte-Carlo-Simulation

Beitrag von ajoscha »

Hallo,

es ist gerade noch eine Frage aufgetaucht. Ich hoffe es ist in Ordnung, wenn ich dafür keinen neuen Thread aufmache. Kann es sein, dass ich p-Werte von 1,00 habe? Habe ich noch nie erlebt, aber von der Programmierung her müsste alles richtig sein.

Viele Grüße
Ludwig
Antworten