Softwareaufgaben

Aufgaben

1. Grundlagen und Skalenniveaus

Aufgabe 1.1

Betrachten Sie in R den Datensatz mtcars und die dazugehörige Hilfeseite.

  1. Welche Skalenniveaus haben die einzelnen Spalten des Datensatzes?

Zur Lösung

2. Häufigkeiten und deren grafische Darstellung

Aufgabe 2.1

  1. Bestimmen Sie die absoluten und relativen Häufigkeiten der Werte aus den Spalten cyl, vs, am und gear und visualisieren Sie diese.
  2. Erstellen Sie eine geeignete Visualisierung der Häufigkeitsverteilung von wt, hp und qsec.

Zur Lösung

3. Lagemaße

Aufgabe 3.1

Laden Sie zunächst das Paket ggplot2 mit Hilfe des Befehls library(ggplot2)1. Wir betrachten nun den Datensatz diamonds.

  1. Bestimmen Sie, wie viel Karat die Diamanten im Durchschnitt aufweisen. Nutzen Sie dazu das arithmetische mittel und den Median. Vergleichen Sie beide Werte!
  2. Bestimmen Sie nun die Dezile für das Gewicht der Diamanten !
  3. Visualisieren Sie die Häufigkeitsverteilung der Gewichte der Diamanten mit Hilfe eines Boxplots.

Zur Lösung

Aufgabe 3.2

Betrachten Sie nun den Kurs des DAX zwischen 1991 und 1998 mit Hilfe des DAtensatzes EuStockMarkets[,"DAX"]. Bestimmen Sie die durchschnittliche Wachstumsrate des DAX.

Zur Lösung

4. Streuungsmaße

Aufgabe 4.1

Wir betrachten wieder den Datensatz diamonds.

  1. Bestimmen Sie die Streuung für die Preise der Diamanten. Nutzen Sie dafür ein geeignetes Streuungsmaß!
  2. Vergleichen Sie die arithemtischen Mittel und Standardabweichungen der Preise der Diamanten für die unterschiedlichen Schliffe (cut). Welcher Cut weist den höchsten Mittelwert, welcher die höchste Streuung auf?
  3. Führen Sie dieselbe Analyse wie in Aufgabenteil b durch und nutzen Sie diesmal robuste Lage- und Streuungsmaße. Was fällt Ihnen auf?

Zur Lösung

Aufgabe 4.2

Gegeben sind folgende Boxplots, Histogramme und empirische Verteilungsfunktionen von 4 verschiedenen Datensätzen. Finden Sie heraus, welche der Abbildungen sich auf denselben Datensatz beziehen (Datensatz 1,2,3 oder 4).

Zur Lösung

5. Zusammenhangsmaße

Aufgabe 5.1

Wir betrachten wieder den Datensatz mtcars.

  1. Bestimmen Sie die Korrelation zwischen der PS-Zahl (Spalte hp) und der Beschleunigung (Spalte qsec). Wie interpretieren Sie das Ergebnis?
  2. Bestimmen Sie einen geeignetes Zusammenhangsmaß für den Zusammenhang zwischen der Anzahl Zylinder (Spalte cyl) und der Anzahl Gänge (Spalte gear) eines Fahrzeugs.
  3. Gibt es einen Zusammenhang zwischen der Anzahl Gänge (Spalte gear) und der Tatsache, dass das Fahrzeug ein manuelles oder automatisches Getriebe (Spalte am) besitzt?

Zur Lösung

Aufgabe 5.2

Betrachten Sie wieder den Datensatz diamonds. Liegt ein Zusammenhang zwischen dem Gewicht eines Diamanten in Karat und dem Preis vor? Ist dieser Zusammenhang linear? Visualisieren Sie sich zur Beantwortung der Frage die Daten in geeigneter Form.

Zur Lösung

6. Lineare Regression

Aufgabe 6.1

Wir betrachten wieder den Datensatz mtcars.

  1. Bestimmen Sie die Regressionsgerade für die Zielvariable mpg (Miles per Gallon; also der Verbrauch) in Abhängigkeit von cyl (Anzahl Zylinder), disp (Hubraum) und hp (PS). Wie lauten die Koeffizienten der Regressionsgerade und wie interpretieren Sie diese?
  2. Was können Sie über das Bestimmtheitsmaß aussagen?
  3. Falls Sie nun ein neues Fahrzeug mit 8 Zylindern, 200 Kubikinches Hubraum und 150 PS berücksichtigen, welchen Verbrauch (in Meilen pro Gallone) können Sie erwarten?

Zur Lösung

Aufgabe 6.2

Verwenden sie nun den in R integrierten Datensatz trees, der Informationen über den Durchmesser, die Höhe und das Volumen von 31 gefällten Schwarzkiefern enthält.

  1. Erstellen Sie ein lineares Regressionsmodell, um das Volumen der Bäume anhand ihres Durchmessers vorherzusagen.
  2. Berechnen die Regressionskoeffizienten und das Bestimmtheitsmaß und interpretieren Sie diese.
  3. Visualisieren Sie die Daten sowie die Regressionsgerade.

Zur Lösung

Aufgabe 6.3

Verwenden Sie den in R integrierten Datensatz iris, der Informationen über die Länge und Breite der Kelchblätter (Sepal) und Blütenblätter (Petal) von 150 Iris-Blumen aus drei verschiedenen Arten enthält.

  1. Erstellen Sie ein lineares Regressionsmodell, um die Petal Length (Blütenblattlänge) anhand der Sepal Length (Kelchblattlänge) vorherzusagen. Berechnen Sie die Regressionskoeffizienten und das Bestimmtheitsmaß.
  2. Zeichnen Sie zudem ein Streudiagramm mit der Regressionsgeraden.

Zur Lösung

7. Wahrscheinlichkeiten

Aufgabe 7.1

Nutzen Sie R und die Funktion sample, um die den Absolutbetrag der Differenz von 10000 Würfen mit zwei Würfeln zu bestimmen. Bestimmen und visualisieren Sie die Häufigkeiten, mit der die unterschiedlichen Ereignisse auftreten.

Zur Lösung

Aufgabe 7.2

Nutzen Sie R und die Funktion sample, um die Anzahl Kopf bei einem 10-fachen Münzwurf zu bestimmen. Gehen Sie dabei davon aus, dass die Münzen gezinkt sind und die Wahrscheinlichkeit für Kopf bei jedem Wurf 0,7 beträgt. Führen Sie dieses Experiment 10000 mal durch, bestimmen und visualisieren Sie die Häufigkeiten, mit der die unterschiedlichen Ereignisse für die Anzahl Kopf auftreten.

Hinweis: Erstellen Sie eine Matrix mit 10 Spalten und 10000 Zeilen, welche die Ergebnisse der Münzwürfe enthält. Dabei sei Kopf = 1 und Zahl = 0. Verwenden Sie dann die Funktion rowSums um die Summe je Zeile zu berechnen.

Zur Lösung

8. Zufallsvariablen

Aufgabe 8.1

Bestimmen Sie mit Hilfe von R und der Funktion dbinom die Wahrscheinlichkeiten, in 10 Würfen x Sechsen zu werfen. Zeichnen Sie zu dieser Zufallsvariable die Wahrscheinlichkeitsfunktion.

Zur Lösung

Aufgabe 8.2

Die Dauer (in Minuten) eines Anrufs bei einem Kundensupport-Service folgt einer normalverteilten Zufallsvariablen mit einem Durchschnitt von 8 Minuten und einer Standardabweichung von 2 Minuten. Berechnen Sie mit R schreiben, die Wahrscheinlichkeit, dass ein Anruf länger als 10 Minuten dauert.

Zur Lösung

Aufgabe 8.3

Die Zufallsvariable \(X\) habe die folgende Dichtefunktion: \[ f(x) = \begin{cases} 3x^2 & x\in [0{;}1] \\ 0 & \text{sonst.} \end{cases} \] Bestimmen Sie mit Hilfe von R die Wahrscheinlichkeit \(P(X\in[0{,}2{;}0{,}4])\)

Zur Lösung

Aufgabe 8.4

Erzeugen Sie 1.000 Poisson-verteilte Zufallszahlen mit erwarteter Häufigkeit \(\lambda = 5\) und visualisieren Sie deren Häufigkeitsverteilung. Vergleichen Sie diese mit der dazugehörigen Wahrscheinlichkeitsverteilung.

Zur Lösung

Aufgabe 8.5

Erzeugen Sie 1.000 exponentialverteilte Zufallszahlen mit Ereignisrate \(\lambda = 2\) und visualisieren Sie deren Häufigkeitsverteilung. Vergleichen Sie diese mit der dazugehörigen Wahrscheinlichkeitsverteilung.

Zur Lösung

Aufgabe 8.6

Bestimmen Sie folgende Wahrscheinlichkeiten mit Hilfe von R für eine Zufallsvariable \(X\sim\text{N}(5,9)\)

  1. \(P(X\leq 5)\)
  2. \(P(0\leq X < 5)\)
  3. \(P(X>7)\)

Zur Lösung

Aufgabe 8.7

Sei \(X\sim\text{Bin}(n = 20, p = 0.3)\).

  1. Berechnen Sie \(P(X=10)\)
  2. Berechnen Sie \(P(4\leq X < 10)\)
  3. Für welche Realisation \(x\) gilt \(P(X\leq x) = 0.95\)

Zur Lösung

9. Punktschätzung

Aufgabe 9.1

Simulieren Sie mit Hilfe der sample Funktion einen Münzwurf, der 100 Mal wiederholt wird. Schätzen Sie nach 1,2,3,4,5,… Mal jeweils die Wahrscheinlichkeit für eine Seite (z.B. Kopf) durch das arithmetische Mittel und Visualisieren Sie den Verlauf der Schätzung über die 100 Versuche.

Zur Lösung

Aufgabe 9.2

Erzeugen Sie 1.000 standardnormalverteilte Zufallszahlen. Schätzen Sie zunächst mit 1,2,3,4,5,… dieser Zahlen jeweils die Varianz mit Hilfe des erwartungstreuen Schätzers \[ S^2 = \frac{1}{n-1}\sum_{i=1}^n (X_i-\bar{X})^2. \] Visualisieren Sie den Verlauf der Schätzung über die 10000 Versuche.

Zur Lösung

10. Intervallschätzung

Aufgabe 10.1

Bestimmen Sie ein Konfidenzintervall zum Niveau \(1-\alpha=0{,}95\) für die Reichweite (mpg) der Fahrzeuge aus dem Datensatz mtcars. Wie Interpretieren Sie Ihr Ergebnis? Welche Annahme müssen Sie für die Berechnung treffen?

Zur Lösung

Aufgabe 10.2

Erzeugen Sie 100 binomialverteilte Zufallszahlen mit \(n=1\) und \(p=0{,}3\). Bestimmen Sie anschließend ein Konfidenzintervall zum Niveau \(1-\alpha = 0{,}95\). Liegt der gesuchte Parameter (\(p=0{,}3\)) tatsächlich im Konfidenzintervall?

Zur Lösung

Aufgabe 10.3

Wie groß müsste der Stichprobenumfang in Aufgabe 1.10.2 sein, damit das Konfidenzintervall nicht breiter als 0,1 ist? Führen Sie anschließend die Schritte aus Aufgabe 1.10.2 noch einmal mit dem neuen Stichprobenumfang durch und überprüfen Sie die Länge des Konfidenzintervalls!

Zur Lösung

Lösungen

1. Grundlagen und Skalenniveaus

Aufgabe 1.1


  1. Spalte Skalenniveau
    mpg metrisch (stetig)
    cyl metrisch (diskret)
    disp metrisch (stetig)
    hp metrisch (stetig)
    drat metrisch (stetig)
    wt metrisch (stetig)
    qsec metrisch (stetig)
    vs nomnial
    am nominal
    gear metrisch (diskret)
    carb metrisch (diskret)

zurück

2. Häufigkeiten und deren grafische Darstellung

Aufgabe 2.1

  1. # Absolute und relative Häufigkeiten 'cyl'
    table(mtcars$cyl)
    
     4  6  8 
    11  7 14 
    prop.table(table(mtcars$cyl))
    
          4       6       8 
    0.34375 0.21875 0.43750 
    barplot(table(mtcars$cyl))

    # Absolute und relative Häufigkeiten 'vs'
    table(mtcars$vs)
    
     0  1 
    18 14 
    prop.table(table(mtcars$vs))
    
         0      1 
    0.5625 0.4375 
    barplot(table(mtcars$vs))

    # Absolute und relative Häufigkeiten 'am'
    table(mtcars$am)
    
     0  1 
    19 13 
    prop.table(table(mtcars$am))
    
          0       1 
    0.59375 0.40625 
    barplot(table(mtcars$am))

    # Absolute und relative Häufigkeiten 'gear'
    table(mtcars$gear)
    
     3  4  5 
    15 12  5 
    prop.table(table(mtcars$gear))
    
          3       4       5 
    0.46875 0.37500 0.15625 
    barplot(table(mtcars$gear))    

  2. # Histogramm 'wt'
    hist(mtcars$wt)

    # Histogramm 'hp'
    hist(mtcars$hp)

    # Histogramm 'qsec'
    hist(mtcars$qsec)

zurück

3. Lagemaße

Aufgabe 3.1

  1. arithmetisches Mittel:

    library(ggplot2)
    mean(diamonds$carat)
    [1] 0.7979397

    Median:

    median(diamonds$carat)
    [1] 0.7
  2. Dezile:

    quantile(diamonds$carat, probs = seq(0,1,0.1))
      0%  10%  20%  30%  40%  50%  60%  70%  80%  90% 100% 
    0.20 0.31 0.35 0.42 0.53 0.70 0.90 1.01 1.13 1.51 5.01 
  3. Boxplot:

    boxplot(diamonds$carat)

zurück

Aufgabe 3.2

Berechnung:

DAX <- EuStockMarkets[,"DAX"]
n <- length(DAX)

# Bestimmung der Wachsumsraten
wachstumsraten <- diff(DAX)/DAX[-n]

# Ableitung der Wachstumsfaktoren
wachstumsfaktoren <- wachstumsraten + 1
    
# Berechnung des geometrischen Mittel
durchschn_wachstumsfaktor <- prod(wachstumsfaktoren)^(1/(n-1))
durchschn_wachstumsrate <- durchschn_wachstumsfaktor-1
durchschn_wachstumsrate
[1] 0.0006522544

Die durchschnittliche Wachstumsrate des DAX beträgt also 0.07%

zurück

4. Streuungsmaße

Aufgabe 4.1

  1. Varianz und Standardabweichung der Diamantenpreise:

    library(ggplot2)
    var(diamonds$price)
    [1] 15915629
    sd(diamonds$price)
    [1] 3989.44
  2. Berechnung der arithmetischen Mittel je nach cut:

    mean(diamonds$price[diamonds$cut == "Fair"])
    [1] 4358.758
    mean(diamonds$price[diamonds$cut == "Good"])
    [1] 3928.864
    mean(diamonds$price[diamonds$cut == "Very Good"])
    [1] 3981.76
    mean(diamonds$price[diamonds$cut == "Premium"])
    [1] 4584.258
    mean(diamonds$price[diamonds$cut == "Ideal"])
    [1] 3457.542

    Berechnung der Standardabweichungen je nach cut:

    sd(diamonds$price[diamonds$cut == "Fair"])
    [1] 3560.387
    sd(diamonds$price[diamonds$cut == "Good"])
    [1] 3681.59
    sd(diamonds$price[diamonds$cut == "Very Good"])
    [1] 3935.862
    sd(diamonds$price[diamonds$cut == "Premium"])
    [1] 4349.205
    sd(diamonds$price[diamonds$cut == "Ideal"])
    [1] 3808.401

    Mittelwert und Streuung sind für den Cut “Premium” am höchsten. Die durchschnittlichen Preise steigen nicht mit der Qualität des Cuts konsistent an.

  3. Berechnung der Mediane je nach cut:

    median(diamonds$price[diamonds$cut == "Fair"])
    [1] 3282
    median(diamonds$price[diamonds$cut == "Good"])
    [1] 3050.5
    median(diamonds$price[diamonds$cut == "Very Good"])
    [1] 2648
    median(diamonds$price[diamonds$cut == "Premium"])
    [1] 3185
    median(diamonds$price[diamonds$cut == "Ideal"])
    [1] 1810

    Berechnung der Standardabweichungen je nach cut:

    mad(diamonds$price[diamonds$cut == "Fair"], constant = 1)
    [1] 1472.5
    mad(diamonds$price[diamonds$cut == "Good"], constant = 1)
    [1] 1924.5
    mad(diamonds$price[diamonds$cut == "Very Good"], constant = 1)
    [1] 1926
    mad(diamonds$price[diamonds$cut == "Premium"], constant = 1)
    [1] 2274
    mad(diamonds$price[diamonds$cut == "Ideal"], constant = 1)
    [1] 1100

    Die Mediane sind geringer als die arithmetischen Mittel, was auf wenige Diamanten mit sehr hohen Preisen (Ausreißer) hindeutet. Darüber hinaus zeigt sich das gleiche Bild: Mittelwert und Streuung sind für den Cut “Premium” am höchsten.

zurück

Aufgabe 4.2

  • Datensatz 1: Histogramm 1, Boxplot 4, Empirische Verteilungsfunktion 1
  • Datensatz 2: Histogramm 2, Boxplot 2, Empirische Verteilungsfunktion 3
  • Datensatz 3: Histogramm 3, Boxplot 1, Empirische Verteilungsfunktion 4
  • Datensatz 4: Histogramm 4, Boxplot 3, Empirische Verteilungsfunktion 2

zurück

5. Zusammenhangsmaße

Aufgabe 5.1

  1. Korrelation zwischen der PS-Zahl (Spalte hp) und der Beschleunigung (Spalte qsec)

    cor(mtcars$hp, mtcars$qsec, method = "pearson")
    [1] -0.7082234

    Es liegt also ein starker negativer Zusammenhang vor, d.h. je mehr PS ein Fahrzeug hat, umso weniger Sekunden benötigt das Fahrzeug, um eine Viertelmeile zurück zu legen.

  2. Zusammenhang zwischen der Anzahl Zylinder (Spalte cyl) und der Anzahl Gänge (Spalte gear):

    cor(mtcars$cyl, mtcars$gear, method = "spearman")
    [1] -0.5643105
    cor(mtcars$cyl, mtcars$gear, method = "kendall")
    [1] -0.5125435

    Da es sich bei den Merkmalen um ordinalskalierte Variablen handelt, verwenden wir Spearmans \(\rho\) oder Kendalls \(\tau\). Beide deuten auf einen starken negativen Zusammenhang hin, d.h. je höher die Anzahl Zylinder eines Fahrzeugs, umso geringer die Anzahl der Gänge.

  3. Zusammenhang zwischen der Anzahl Gänge (Spalte gear) und der Tatsache, dass das Fahrzeug ein manuelles oder automatisches Getriebe (Spalte am) besitzt:

    # Kontingenztafel der beiden Merkmale
    tbl_mtcars <- table(Gears = mtcars$gear, Transmission = mtcars$am)
    tbl_mtcars
         Transmission
    Gears  0  1
        3 15  0
        4  4  8
        5  0  5

    Berechnung des \(\chi^2\)-Koeffizienten und Cramérs V:

    # Bestimmung X^2
    chi_sq <- chisq.test(tbl_mtcars)
    chi_sq$statistic
    X-squared 
     20.94467 
    # Anzahl Beobachtungen und Zeilen/Spalten
    n <- nrow(mtcars)
    k <- min(dim(tbl_mtcars))
    
    # Cramers V berechnen
    cramers_v <- sqrt(chi_sq$statistic/(n*(k-1)))
    as.numeric(cramers_v)
    [1] 0.8090247

    Es liegt also ein starker Zusammenhang zwischen der Anzahl Gänge eines Fahrzeugs und der Getriebeart vor.

zurück

Aufgabe 5.2

Zunächst berechnen wir die Korrelation der beiden metrischen Merkmale:

library(ggplot2)
 
# Berechnung der Pearson Korrelation
cor(diamonds$carat, diamonds$price)
[1] 0.9215913

Der Korrelationskoeffizient liegt bei \(r_{xy} = 0,92\). Es liegt also ein starker positiver linearer Zusammenhang vor, d.h. je schwerer ein Diamant, umso teurer ist er auch.

Nun visualisieren wir uns beide Merkmale, um die Form des Zusammenhangs ablesen zu können.

# Visualisierung
plot(x = diamonds$carat, y = diamonds$price,
     xlab = "Gewicht in Karat",
     ylab = "Preis in USD")

Der Zusammenhang scheint nicht linear zu sein, sondern vielmehr quadratisch oder exponentiell. Mit steigendem Gewicht steigt der Preis nicht linear an, sondern überproportional.

# Visualisierungn nach Logarithmierung
plot(x = log(diamonds$carat), y = log(diamonds$price),
     xlab = "Gewicht in Log(Karat)",
     ylab = "Preis in Log(USD)")

Logarithmiert man Gewicht und Preis, erscheint der Zusammenhang linear.

# Berechnung der Pearson Korrelation
cor(log(diamonds$carat), log(diamonds$price))
[1] 0.9659137

Die Korrelation beträgt dann sogar \(r_{xy} = 0,97\).

zurück

6. Lineare Regression

Aufgabe 6.1

  1. Wir bestimmen die Regressionsgerade:
# Bestimmung der Regressionsgerade
reg_modell <- lm(mpg~cyl+disp+hp, data = mtcars)
reg_modell

Call:
lm(formula = mpg ~ cyl + disp + hp, data = mtcars)

Coefficients:
(Intercept)          cyl         disp           hp  
   34.18492     -1.22742     -0.01884     -0.01468  

Die Parameter für Zylinder, Hubraum und PS sind negativ, d.h. die Anzahl Meilen, die mit einer Gallone Benzin zurückgelegt werden kann, sinkt bei steigender Anzahl Zylinder, Hubraum oder PS. Der Achsenabschnitt liegt bei ca. 34.18, d.h. ein hypothetisches Fahrzeug mit 0 Zylindern, 0 Hubraum und 0 PS würde ca. 34,18 Meilen pro Gallone schaffen. Solch ein Fahrzeug exisitert aber natürlich nicht.

  1. Wir bestimmen das Bestimmtheitsmaß:
summary(reg_modell)$r.squared
[1] 0.7678877

Das Bestimmtheitsmaß hat einen Wert von ca. 77%. D.h. 77% der Varianz des Verbrauchst lässt sich durch die drei unabhängigen Merkmale erklären. Das Regressionsmodell scheint also den Verbrauch gut zu repräsentieren.

  1. Vorhersage mit R:
mtcars_new <- data.frame(cyl = 8,
                         disp = 200,
                         hp = 150)
predict(reg_modell, newdata = mtcars_new)
       1 
18.39604 

Es wären 18,39 Meile pro Gallone zu erwarten.

zurück

Aufgabe 6.2

  1. Wir bestimmen die Regressionsgerade:
# Erstellen eines linearen Regressionsmodells
model <- lm(Volume ~ Girth, data = trees)
  1. Wir bestimmen das Bestimmtheitsmaß:
# Ausgabe der Regressionskoeffizienten
coef(model)
(Intercept)       Girth 
 -36.943459    5.065856 
# Berechnung des Bestimmtheitsmaßes
summary(model)$r.squared
[1] 0.9353199

Der Achsenabschnitt beträgt ca. -37, d.h. bei einem Baum mit einem Durchmesser von 0 Inch wäre ein Volumen von -37 Kubikfeet zu erwarten. Der Steigungskoeffizient beträgt ca. 5, d.h. pro zusätzlichem Inch an Durchmesser nimmt das Volumen der Bäume um 5 Kubikfeet zu. Der Wert des Bestimmtheitsmaßes liegt bei ca. 94%, d.h. die Regressionsgerade repräsentiert die Beobachtungen gut und es werden ca. 94% der Varianz der Volumina durch die Durchmesser erklärt.

  1. Visualisierung
plot(x = trees$Girth, y = trees$Volume, 
     pch = 19, 
     xlab = "Durchmesser",
     ylab = "Volumen",
     cex.lab = 2,
     cex.axis = 2)
abline(model, col = "red")

zurück

Aufgabe 6.3

  1. Wir bestimmen die Regressionsgerade:
# Erstellen eines linearen Regressionsmodells
model <- lm(Petal.Length ~ Sepal.Length, data = iris)
  1. Wir bestimmen das Bestimmtheitsmaß:
# Ausgabe der Regressionskoeffizienten
coef(model)
 (Intercept) Sepal.Length 
   -7.101443     1.858433 
# Berechnung des Bestimmtheitsmaßes
summary(model)$r.squared
[1] 0.7599546

Der Achsenabschnitt beträgt ca. -7,1, d.h. bei einer Blume mit einer Kelchblattlänge von 0 wäre eine Blütenblattlänge von ca. -7,1 zu erwarten. Der Steigungskoeffizient beträgt ca. 1,85, d.h. pro zusätzlichem Zentimeter der Kelchblattlänge nimmt die Blütenblattlänge um 1,85 cm zu. Der Wert des Bestimmtheitsmaßes liegt bei ca. 76%, d.h. die Regressionsgerade repräsentiert die Beobachtungen gut und es werden ca. 76% der Varianz der Blütenblattlänge durch die Kelchblattlänge erklärt.

  1. Visualisierung
plot(x = iris$Sepal.Length, y = iris$Petal.Length, 
     pch = 19, 
     xlab = "Durchmesser",
     ylab = "Volumen",
     cex.lab = 2,
     cex.axis = 2)
abline(model, col = "red")

zurück

7. Wahrscheinlichkeiten

Aufgabe 7.1

# Würfeln mit zwei Würfeln
w1 <- sample(1:6, 10000, replace = TRUE)
w2 <- sample(1:6, 10000, replace = TRUE)

# Berechnung des Absolutbetrags der Differenz beider Würfel
w <- abs(w1-w2)

# Berechung der absoluten und relativen Häufigkeiten
table(w)
w
   0    1    2    3    4    5 
1635 2719 2284 1683 1129  550 
prop.table(table(w))
w
     0      1      2      3      4      5 
0.1635 0.2719 0.2284 0.1683 0.1129 0.0550 
# Visualisierung
plot(prop.table(table(w)), type = "h",
     xlab = "Absolutbetrag der Differenz der Würfelzahlen",
     ylab = "relative Häufigkeit des Auftretens")

zurück

Aufgabe 7.2

# Werfen der Münzen (Kopf = 1, Zahl = 0)
muenzen <- sample(c(1,0), 10000*10, replace = TRUE, prob = c(0.7,0.3))
muenzen <- matrix(muenzen, ncol = 10, nrow = 10000)

# Berechnung der Anzahl Kopf je Durchlauf
anz_kopf <- rowSums(muenzen)

# Berechung der absoluten und relativen Häufigkeiten
table(anz_kopf)
anz_kopf
   0    2    3    4    5    6    7    8    9   10 
   1   20   81  359 1045 1977 2667 2309 1254  287 
prop.table(table(anz_kopf))
anz_kopf
     0      2      3      4      5      6      7      8      9     10 
0.0001 0.0020 0.0081 0.0359 0.1045 0.1977 0.2667 0.2309 0.1254 0.0287 
# Visualisierung
plot(prop.table(table(anz_kopf)), type = "h",
     xlab = "Anzahl Kopf beim 10-fachen Münzwurf",
     ylab = "relative Häufigkeit des Auftretens")

zurück

8. Zufallsvariablen

Aufgabe 8.1

Lösung

# Berechnung der Wahrscheinlichkeiten
x <- 0:10
p <- dbinom(x, size = 10, prob = 1/6)

# Zeichnen der Wahrscheinlichkeitsfunktion
plot(x,p, type = "h")
points(x, p, pch = 19)

zurück

Aufgabe 8.2

Lösung

# Berechnung der Wahrscheinlichkeit
1-pnorm(10, mean = 8, sd = 2)
[1] 0.1586553

zurück

Aufgabe 8.3

Lösung

Für \(x\in[0{;}1]\) lautet die Verteilungsfunktion \(F(x)=x^3\).

# Berechnung der Wahrscheinlichkeit
0.4^3-0.2^3
[1] 0.056

zurück

Aufgabe 8.4

# Erzeugen der Zufallszahlen
zz <- rpois(1000, lambda = 5)

# Visualisierung der Häufigkeitsverteilung
plot(prop.table(table(zz)), 
     type = "h", lwd = 2)

# Vergleich mit der Wahrscheinlichkeitsverteilung
points(0:14+0.3, dpois(0:14, lambda = 5), 
       type = "h", col = "red", lwd = 2)

zurück

Aufgabe 8.5

# Erzeugen der Zufallszahlen
zz <- rexp(1000, rate = 2)

# Visualisierung der Häufigkeitsverteilung
hist(zz, breaks = 20, freq = FALSE)

# Vergleich mit der Wahrscheinlichkeitsverteilung
lines(seq(0,4,0.01), dexp(seq(0,4,0.01), rate = 2), 
       col = "red")

zurück

Aufgabe 8.6

# a
pnorm(5, mean = 5, sd = 3)
[1] 0.5
# b
pnorm(5, mean = 5, sd = 3) - 
  pnorm(0, mean = 5, sd = 3)
[1] 0.4522096
# c
1 - pnorm(7, mean = 5, sd = 3)
[1] 0.2524925

zurück

Aufgabe 8.7

Sei \(X\sim\text{Bin}(n = 20, p = 0.3)\).

  1. Berechnen Sie \(P(X=10)\)
  2. Berechnen Sie \(P(4\leq X < 10)\)
  3. Für welche Realisation \(x\) gilt \(P(X\leq x) = 0.95\)
# a
dbinom(10, size = 20, prob = 0.3)
[1] 0.03081708
# b
pbinom(9, size = 20, prob = 0.3) - 
  pbinom(3, size = 20, prob = 0.3)
[1] 0.8449513
# c
qbinom(0.95, , size = 20, prob = 0.3)
[1] 9

zurück

Zurück nach oben

Fußnoten

  1. Falls Sie auf Ihrem eigenen Rechner arbeiten, müssen Sie möglicherweise zunächst das Paket installieren mittels install.packages('ggplot2')↩︎