1:8[1] 1 2 3 4 5 6 7 8
HS 2025
Gidon Frischkorn
In dieser Übung werden keine neuen Konzepte oder Vorgehensweisen mit R eingeführt und besprochen. Statt dessen werden wir mit Hilfe der bisher bekannten Methoden und Operationen die Konzepte der Wahrscheinlichkeitstheorie üben und vertiefen.
Wenn Sie trotzdem nochmal eine Erklärung von den wesentlichen Grundbegriffen und Konzepten der Wahrscheinlichkeitstheorie aus einer anderen Perspektive bekommen wollen, dann empfehle ich Ihnen sich die folgenden YouTube Videos anzuschauen:
Leider gibt es in R keine Funktion, die die Fakultät einer Zahl \(k\) direkt berechnet. Zum Glück kann man aber mit einigen einfachen Funktionen die Fakultät einer Zahl schnell berechnen. Dafür müssen wir zwei Schritte durchführen:
Für den ersten Schritt gibt es in R die Notation 1:k, wenn Sie einen beliebigen Ganzzahligen Wert für k einsetzen, zum Beispiel k = 8, dann erhalten sie die Sequenz der ganzen Zahlen von 1 bis 8
Falls Sie die Sequenz lieber so wie in der Vorlesung von der grössten bis zur kleinsten Zahl ausgeben wollen, dann können Sie auch k:1 schreiben
Diese Sequenz können wir nutzen um nun das Produkt aller Elemente der Sequenz zu berechnen. Dafür bietet R die Funktion prod, die das Produkt aller Elemente eines Vektors berechnet, der der Funktion übergeben wird. Wir können die Fakultät einer Zahl also folgendermassen berechnen.
Mit Hilfe dieser Funktion sollten Sie die folgenden Übungsaufgaben lösen können.
In den folgenden Übungen werden Sie wie in der letzten Übung mit dem simulierten Datensatz von fiktiven Daten eines Erstsemester-Jahrgangs von Psychologie-Studierenden arbeiten. Für diese Übung verwenden wir den gleichen Datensatz wie in Übung 3, sie können Sich den Datensatz auf ihren eigenen PC herunterladen: semester_data2.csv
Alternativ können Sie hier auf der Website direkt R Code mit Hilfe der webr Erweiterung ausführen um die Aufgaben zu lösen. Der Datensatz enthält die Variablen: geschlecht, nationalität, wohnort, alter und wissen_statistik. Unten sehen sie die ersten Zeilen des simulierten Datensatzes.
geschlecht nationalität wohnort alter wissen_statistik grösse
1 weiblich Schweiz Luzern 21.9 3 158
2 weiblich Frankreich Bern 24.0 2 159
3 weiblich Schweiz Zug 21.2 3 168
4 weiblich Frankreich Zuerich 27.0 2 178
5 weiblich andere St. Gallen 17.7 4 164
6 weiblich Schweiz Bern 22.0 3 166
Wie in den bisherigen Übungen finden Sie hier über den Übungsaufgaben die webr Konsole, die Ihnen das Schreiben und Durchführen von R Code direkt auf der Website ermöglicht. Wenn viele Studierenden die Übungen parallel machen, dann kann es sein, dass webr sehr langsam wird.
Bitte löschen Sie die ersten Zeilen, die den Datensatz lokal verfügbar machen nicht. Wenn Sie die Zeilen doch aus versehen Löschen sollten dann können Sie auf der rechten Seite der Konsole das Symbol mit den im Kreis drehenden Pfeilen drücken, um die Konsole zurück zu setzen.
Um den Code den Sie geschrieben haben auszuführen drücken Sie entweder
Run Code, damit der gesamte Code ausgeführt würde. Alternativ können Sie auch einzelne Zeilen ausführen, indem sie CRTL+Enter (Windows) oder CMD+Enter (Mac) drücken.
Nutzen Sie eine Suchmaschine, wenn Sie nicht wissen welche Funktionen Ihnen ein bestimmtes Ergebnis liefern. Ausserdem können Sie in R immer die Hilfe einer Funktion aufrufen, indem sie vor den Namen der Funktion ein Fragezeichen schreiben, z. Bsp
?medianoder die Hilfe-Funktionhelp()mit dem jeweiligen Funktionsbefehl ausführen:help(median).
In einem Seminar mit 30 Studierenden sollen 4 Personen zusammen ein Gruppenreferat vorbereiten. Dafür will der Dozent 4 zufällige Studierende aus allen Seminarteilnehmern ziehen. Sie und Ihre Kollegin, haben gerade überhaupt keine Zeit noch mehr fürs Studium zu tun und hoffen, dass sie nicht gezogen werden. Welches Modell der Kombinatorik passt für das hier vorliegenden Zufallsexperiment und wie hoch ist die Wahrscheinlichkeit, dass Sie und Ihre Kollegin um das Referat herum kommen?
Zuerst müssen Sie erkennen, dass es sich bei diesem Zufallsexperiment um einen Ziehen ohne Zurücklegen und ohne Berücksichtigung der Reihenfolge handelt.
Entsprechend können wir mit Hilfe des Binomialkoeffizienten als erstes die Gesamtzahl an möglichen Ergebnissen \(K\) bestimmen. Die Zahl an möglichen Ergebnissen bei einer Ziehung \(k\) ist dabei 30 und die Anzahl an Ziehungen \(n\) ist 4. Mit Hilfe der Produktfunktion prod können wir die entsprechenden Fakultäten mit Hilfe von Ganzzahligen Sequenzen k:1, dabei in die entsprechende Funktion einsetzen: gesamtzahl <- prod(30:1)/(prod((30-4):1)*prod(4:1))
Nun müssen wir überlegen, wie viele Ergebnisse günstig für das Ereignis, dass weder Sie noch Ihre Kollegin für das Referat ausgewählt werden, sind. Im Prinzip heisst dieses Ereignis, dass die Studierenden für das Gruppenreferat nur aus den anderen 28 Teilnehmern gezogen werden, die nicht Sie oder Ihre Kollegin sind. Damit können wir die Anzahl günstiger Ereignisse ebenfalls mit einem Binomialkoeffizienten ausrechnen. Dabei setzen wir die Zahl an möglichen Ergebnissen bei einer Ziehung \(k\) jedoch auf 28. Die Anzahl an Ziehungen \(n\) bleibt bei 4. Also ergibt sich die Anzahl an günstigen Ereignisse aus: günstige_fälle <- prod(28:1)/(prod((28-4):1)*prod(4:1))
Mit Hilfe dieser beiden Werte können wir nun die Wahrscheinlichkeit ausrechnen, dass weder Sie noch Ihre Freundin für das Referat ausgewählt werden: wahrscheinlichkeit <- günstige_fälle / gesamtzahl.
Aus dieser Berechnung sollte sich ergeben, dass die Wahrscheinlichkeit, dass Sie und Ihre Kollegin um das Referat herum kommen gleich 0.7471 ist.
Berechnen Sie die Wahrscheinlichkeit das eine Person aus dem Datensatz semester_data2 aus der Schweiz kommt. Prüfen Sie, ob diese Wahrscheinlichkeit unabhängig davon ist eine Mann oder eine Frau zu sein. Am einfachsten Berechnen sie dafür die bedingte Wahrscheinlichkeiten aus der Schweiz zu sein, wenn eine Person eine Frau oder ein Mann ist.
Um diese Frage zu lösen müssen wir drei Wahrscheinlichkeiten aus der relativen Häufigkeiten der Daten schätzen:
Um die relative Häufigkeit aller Personen zu bekommen, die aus der Schweiz sind können wir logische Indizierung nutzen: ist_schweizer <- semester_data2$nationalität == "Schweiz", für diese Variable können wir wiederum aufsummieren, wie viele Werte TRUE sind: sum(ist_schweizer), um dann die relative Häufigkeit zu bekommen müssen wir die absolute Häufigkeit noch durch die Anzahl an Werten teilen: sum(ist_schweizer)/length(ist_schweizer).
Vielleicht ist Ihnen aufgefallen, dass die letzte Operation im wesentlichen die Berechnung des Mittelwerts der Variable ist_schweizer darstellt. Insofern können wir auch direkt mit der folgenden Berechnung die Wahrscheinlichkeit berechnen, dass eine Person aus der Schweiz ist: mean(semester_data2$nationalität == "Schweiz")
Mit dem Trick der Mittelwertberechnung können wir auch schnell und effizient die Wahrscheinlichkeit berechnen aus der Schweiz zu sein, wenn eine Person eine Frau oder ein Mann ist. Dafür müssen wir jeweils nur die Werte der Variable nationalität auswählen für die gilt semester_data2$geschlecht == "weiblich", wenn wir die bedingte Wahrscheinlichkeit für Frauen wollen, und semester_data2$geschlecht == "männlich", wenn wir die bedingte Wahrscheinlichkeit für Männer wollen.
Daraus ergibt sich: P(Schweiz | Frau) = mean(semester_data2$nationalität[semester_data2$geschlecht == "weiblich"] == "Schweiz") und P(Schweiz | Mann) = mean(semester_data2$nationalität[semester_data2$geschlecht == "männlich"] == "Schweiz")
Wenn sie diese Werte miteinander vergleich: P(Schweiz) = 0.722; P(Schweiz | Frau) = 0.715; und P(Schweiz | Mann) = 0.744, dann weichen diese numerische (also was die absoluten Zahlen angeht) zwar leicht voneinander ab. Aber an dieser Stelle müssen wir beachten, dass die Schätzung der “wahren” Wahrscheinlichkeit durch die relativen Häufigkeiten aus den Daten eben auch nicht perfekt ist. Deshalb würde ich an dieser Stelle darauf schliessen, dass die Wahrscheinlichkeit aus der Schweiz zu sein stochastisch unabhängig davon ist ob man eine Frau oder ein Mann ist.
Um diesen Schluss noch weiter abzusichern, könnten noch mehr Daten gesammelt werden. Ausserdem werden wir im Laufe des Semesters noch einen statistischen Test kennen lernen, der prüft ob die hier gefundene Abweichung statistisch bedeutsam ist.
Berechnen Sie anhand der Werte in der unter der Frage gegebenen Tabelle, ob die Wahrscheinlichkeit das Personen mit Ihrem Studium zufrieden sind zufrieden_ja von der Stadt in der die Studierenden ihr Studium absolvieren unabhängig sind. Berechnen Sie dafür:
| stadt_a | stadt_b | stadt_c | stadt_d | |
|---|---|---|---|---|
| zufrieden_ja | 26700 | 14900 | 9700 | 8900 |
| zufrieden_nein | 9900 | 6400 | 9100 | 14400 |
Für diese Übung bietet es sich an zuerst einige Wahrscheinlichkeiten zu berechnen, die benötigt werden um das Multiplikationstheorem zu prüfen und zu testen ob die bedingte Wahrscheinlichkeit \(P(Z = ja | Stadt = C) = P(Z = ja)\) gilt.
Für das Multiplikationstheorem sind das folgende Wahrscheinlichkeiten:
Diese Wahrscheinlichkeiten berechnen sich in R folgendermassen:
(26700 + 14900 + 9700 + 8900)/(26700 + 14900 + 9700 + 8900 + 9900 + 6400 + 9100 + 14000) = 0.602(26700 + 9900)/(26700 + 14900 + 9700 + 8900 + 9900 + 6400 + 9100 + 14000) = 0.366(26700)/(26700 + 14900 + 9700 + 8900 + 9900 + 6400 + 9100 + 14000) = 0.267Mit diesen Wahrscheinlichkeiten können wir prüfen ob das Multiplikationstheorem gilt:
Aus \(P(Z = ja) \cdot P(Stadt = A)\) ergibt sich \(0.2203\). Diese Wahrscheinlichkeit ist ungleich der berechneten Wahrscheinlichkeit von \(P(Z = ja \cap Stadt = A) = 0.267\). Daraus können wir schliessen, dass die Wahrscheinlichkeiten nicht voneinander unabhängig sind.
Um zu Prüfen, ob die bedingte Wahrscheinlichkeit mit dem Studium zufrieden zu sein, wenn man in der Stadt C studiert gleich der Wahrscheinlichkeit ist unabhängig vom Studienort mit dem Studium zufrieden zu sein, müssen wir noch zwei weitere Wahrscheinlichkeiten berechnen:
In R können wir diese Wahrscheinlichkeiten folgendermassen berechnen:
(9700) / (26700 + 14900 + 9700 + 8900 + 9900 + 6400 + 9100 + 14000) = 0.097(9700 + 9100) / (26700 + 14900 + 9700 + 8900 + 9900 + 6400 + 9100 + 14000) = 0.188Mit diesen Wahrscheinlichkeiten können wir nun die bedingte Wahrscheinlichkeit berechnen, mit den Studium zufrieden zu sein, wenn man in der Stadt C studiert: \(P(Z = ja | Stadt = C) = \frac{0.097}{0.188} = 0.516\), diese Wahrscheinlichkeit ist unterschiedlich von der Wahrscheinlichkeit mit den Studium zufrieden zu sein unabhängig in welcher Stadt man studiert \(P(Z = ja) = 0.602\). So wie aus dem Multiplikationstheorem auch, können wir daraus schliessen, dass die Wahrscheinlichkeiten voneinander abhängig sind.
Berechnen Sie die Wahrscheinlichkeit das eine Person aus dem Datensatz semester_data2 grösser als 170cm (\(G > 170cm\)) ist. Prüfen Sie, ob diese Wahrscheinlichkeit unabhängig davon ist eine Mann oder eine Frau zu sein. Am einfachsten Berechnen sie dafür die bedingte Wahrscheinlichkeiten grösser als 170cm zu sein, wenn eine Person eine Frau oder ein Mann ist.
Um diese Frage zu lösen müssen wir drei Wahrscheinlichkeiten aus der relativen Häufigkeiten der Daten schätzen:
Um die relative Häufigkeit aller Personen zu bekommen, die grösser als 170 cm sind können wir logische Indizierung nutzen: ist_gross <- semester_data2$grösse > 170, für diese Variable können wir aufsummieren, wie viele Werte TRUE sind: sum(ist_gross), um dann die relative Häufigkeit zu bekommen müssen wir die absolute Häufigkeit noch durch die Anzahl an Werten teilen: sum(ist_gross)/length(ist_gross).
Vielleicht ist Ihnen aufgefallen, dass die letzte Operation im wesentlichen die Berechnun des Mittelwerts der Variable ist_gross darstellt. Insofern können wir auch direkt mit der folgenden Berechnung die Wahrscheinlichkeit berechnen, dass eine Person grösser als 170cm ist: mean(semester_data2$grösse > 170)
Mit dem Trick der Mittelwert berechnung können wir auch schnell und effizient die Wahrscheinlichkeit berechnen grösser als 170 cm zu sein, wenn eine Person eine Frau oder ein Mann ist. Dafür müssen wir jeweils nur die Werte der Variable grösse auswählen für die gilt semester_data2$geschlecht == "weiblich", wenn wir die bedingte Wahrscheinlichkeit für Frauen wollen, und semester_data2$geschlecht == "männlich", wenn wir die bedingte Wahrscheinlichkeit für Männer wollen.
Daraus ergibt sich: P(G > 170cm | Frau) = mean(semester_data2$grösse[semester_data2$geschlecht == "weiblich"] > 170) und P(G > 170cm | Mann) = mean(semester_data2$grösse[semester_data2$geschlecht == "männlich"] > 170)
Berechnen Sie anhand der Werte in der unter der Frabge gegebenen Vier-Felder Tafel die bedingte Wahrscheinlichkeit, dass eine Person Krebs \(K\) hat, wenn Sie Raucher \(R\) ist: \(P(K = "ja" | R = "ja")\)
| krebs_ja | krebs_nein | |
|---|---|---|
| raucher_ja | 80 | 5320 |
| raucher_nein | 20 | 14580 |
Für diese Frage müssen Sie die Formel der bedingten Wahrscheinlichkeit Nutzen: \(P(A|B) = \frac{P(A \cap B)}{P(B)}\).
Die jeweiligen Wahrscheinlichkeiten können Sie aus den absoluten Häufigkeiten in der Tabelle berechnen.
Für \(P(A \cap B)\) ergibt sich diese aus der Menge an Leuten die Krebs haben und Raucher sind \(N_{A \cap B} = 80\) und der Gesamtzahl an Beobachtungen in der Vier-Felder Tafel \(N_{ges} = 2\times 10^{4}\). Daraus ergibt sich die Wahrscheinlichkeit von \(P(A \cap B) = \frac{N_{A \cap B}}{N_{ges}} = \frac{80}{2\times 10^{4}} = 0.004\)
In R sieht diese Berechnung so aus: 80 / (80 + 20 + 5320 + 14580)
[1] 0.004
Für \(P(B)\) die Wahrscheinlichkeit, dass eine Person Raucher ist, müssen Sie die Anzahl der Raucher \(N_B\) durch die gesamt Zahl an Personen \(N_ges\) teilen. Entsprechend ergibt sich für \(P(B) = \frac{N_B}{N_{ges}} = \frac{80 + 5320}{2\times 10^{4}}= 0.27\)
In R sieht diese Berechnung wiederum so aus: (80 + 5320) / (80 + 20 + 5320 + 14580)
[1] 0.27
Nun müssen Sie diese Werte nur noch durcheinander Teilen und erhalten dann die bedingte Wahrscheinlichkeit, dass eine Person Krebs hat wenn Sie Raucher ist: \(P(A \cap B) = \frac{0.004}{0.27} = 0.0148148\)
Wie Ihnen vielleicht aufgefallen ist, ist der Nenner für die beiden Wahrscheinlichkeiten \(P(A \cap B)\) und \(P(B)\) gleich. Deshalb können wir uns die Berechnung der bedingten Wahrscheinlichkeit in R erleichtern indem wir die Zähler der jeweiligen Wahrscheinlichkeiten durcheinander teilen: 80 / (80 + 5320)
[1] 0.01481481