Aufgabe:
In dieser Aufgabe wollen wir Zufallsvariablen mit der Dichte \( f(x)=\frac{1}{2} e^{-|x|}, x \in \mathbb{R} \) simulieren. Schreibe dazu eine Funktion r_density \( (n) \), die \( n \) solcher Zufallsvariablen simuliert.
Nutze anschließend diese Funktion, um N \( =1000 \) solcher Zufallsvariablen zu simulieren. Mithilfe von geom_density( ) kannst du nun die Dichte aus den simulierten Zufallsvariablen ermitteln. Diese Schätzung können wir mit der echten Dichte vergleichen. Erstelle dazu eine Grafik, die folgendermaßen aussieht:
Code:
library(tidyverse)
N <- 1000
r_density <- function(n){
exp(-abs(n))/2
}
x <- runif(N)
tb <- tibble(
x = x,
density_fkt = r_density(x)
)
ggplot() +
geom_density(
data = tb,
mapping = aes(
x = density_fkt,
y = ..scaled..
)
) +
geom_function(
fun = r_density,
xlim = c(-6,6),
color = "red",
size = 1
) +
theme_minimal() +
labs(
x = "x",
y = "Dichtefunktion f(x)",
title = "Geschätzte (schwarz) vs echte (rot) Dichte"
)
Problem:
Wie man im Bild erkennt, stimmt etwas mit den Werten der Dichtefunktion noch nicht und ich weiß einfach nicht, wo das Problem liegen könnte. Die gegebene Funktion sollte stimmen, da man auch die rote Linie bekommt, aber warum stimmen die Zufallsvariablen nicht?