Dosadzovali sme realizácie náhodnej premennej do príslušnej distribučnej funkcie - vzniklo rovnomerné rozdelenie na (0, 1).
curve(pnorm, from = -4, to = 4, n = 1000)
set.seed(123)
x <- rnorm(10)
points(x, rep(0, length(x)), pch = 19, col = "red")
abline(v = 0, col = "grey")
points(rep(0, length(x)), pnorm(x), pch = 19, col = "blue")
arrows(x[1], 0, x[1], pnorm(x[1]), col = "blue")
arrows(x[1], pnorm(x[1]), 0, pnorm(x[1]), col = "blue")
curve(pnorm, from = -4, to = 4, n = 1000)
set.seed(123)
x <- runif(10)
abline(v = 0, col = "grey")
points(rep(0, length(x)), x, pch = 19, col = "red")
# qnorm = kvantilova funkcia, teda inverzna k distribucnej N(0, 1)
points(qnorm(x), rep(0, length(x)), pch = 19, col = "blue")
arrows(0, x[1], qnorm(x[1]), x[1], col = "blue")
arrows(qnorm(x[1]), x[1], qnorm(x[1]), 0, col = "blue")
rovnomerne <- runif(10^4)
transformovane <- qnorm(rovnomerne)
hist(transformovane)
hist(transformovane, probability = TRUE) # na y-ovej osi nie pocetnosti ale pravdepodobnosti
curve(dnorm, from = -4, to = 4, n = 1000, add = TRUE) # dnorm je hustota (density) N(0,1)
Zadanie: Čomu sa rovná pravdepodobnosť, že náhodná premenný s rozdelením N(0,1) nadobudne hodnotu menšiu ako 1.
# presne
pnorm(1)
## [1] 0.8413447
# zo simulacii
set.seed(123)
N <- 10^5
rovnomerne <- runif(N)
y <- qnorm(rovnomerne)
sum(y < 1)/N
## [1] 0.84243
Cvičenie: Zopakujte pre exponenciálne rozdelenie so strednou hodnotou 2 a odhadnute pravdepodobnosť, že náhodná premenná nadobudne hodnotu väčšiu ako 3. Porovnajte s presnou pravdepodobnosťou.
F <- function(x) pexp(x, rate = 1/2)
curve(F , from = -3, to = 10, n = 1000)
Na hodine: Odvodíme, čo robiť v prípade,
a teda neexistuje inverzná funkcia definovaná na (0,1).