0 Daumen
85 Aufrufe

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:


blob.png


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"


blob.png

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?

Avatar von

Ein anderes Problem?

Stell deine Frage

Willkommen bei der Stacklounge! Stell deine Frage einfach und kostenlos

x
Made by a lovely community