Studentovo t rozdelenie má v matematickej štatistike veľmi významné postavenie a širové využitie. Je závislé od jedného parametra, ktorý nazývame stupeň voľnosti.

Hodnotu funkcie hustoty Studentovho t rozdelenia s 10 stupňami voľnosti v bode x= 1 vypočítame pomocou príkazu

sv=10
x=1

dt(x, sv)
## [1] 0.230362

Hodnotu distribučnej funkcie Studentovho t rozdelenia s 10 stupňami voľnosti v bode x= 1 vypočítame pomocou príkazu

sv=10
x=1

pt(x, sv)
## [1] 0.8295534

Hodnotu k-teho kvantilu Studentovho t rozdelenia s 10 stupňami voľnosti vypočítame pomocou príkazu

sv=10
k=0.25

qt(k, sv)
## [1] -0.6998121

Pri konštrukcii intervalov spoľahlivosti majú významnú úlohu niektoré kvantily. Uveďme hodnoty 0,90, 0,95, 0,975, 0,99 kvantilu Studentovho t rozdelenia s 10 stupňami voľnosti

sv=10
k=c(0.90, 0.95, 0.975, 0.99)

Q=qt(k, sv)
cbind(k,Q)
##          k        Q
## [1,] 0.900 1.372184
## [2,] 0.950 1.812461
## [3,] 0.975 2.228139
## [4,] 0.990 2.763769

Znázornime v ďalšom
- funkciu hustoty N(0,1) na intervale (-4,4) červenou farbou, hrubšou čiarou, bodkovanou čiarou,
- funkciu hustoty Studentovho t rozdelenia s 1 stupňom voľnosti na intervale (-4,4) ružovou farbou,
- funkciu hustoty Studentovho t rozdelenia s 5 stupňami voľnosti na intervale (-4,4) modrou farbou,
- funkciu hustoty Studentovho t rozdelenia s 30 stupňami voľnosti na intervale (-4,4) zelenou farbou.
Vpravo hore umiestnime legendu s nazvom “Legenda”. Legenda nemá byť v rámčeku.

dh=-4
hh=4
sv=c(1,5,30)
farba=c("pink", "blue", "green")
labels <- c("df=1", "df=5", "df=30", "normal")
x = seq(dh,hh,by = 0.10)

h1=dnorm(x, mean = 0, sd = 1)
h2=dt(x, sv)

plot(x, h1,
     type="l",
     col="red",
     lwd=2,
     main="Funkcie hustoty Studentovho t rozdelenia",
     xlab="x",
     ylab="Funkcia hustoty h(x)",
     lty =3
     )

for (i in 1:3)
        {
  lines(x, dt(x,sv[i]), lwd=1, col=farba[i])
        }

legend ("topright", 
       inset=.05, 
       c("N(0,1)", "t(1)", "t(5)", "t(30)"),
       title="Legenda",
       lwd=c(2,1,1,1), 
       lty=c(3,1,1,1), 
       box.lty=0,
       col=c("red","pink", "blue", "green")
       )

Poznámka:
Hrúbku čiary meníme pomocou parametra lwd.
Umiestnenie legendy určujeme pomocou “bottomright”, “bottom”, “bottomleft”, “left”, “topleft”, “top”, “topright”, “right” and “center”.
Výber fontov pre parameter text.font: 1- normal, 2 - bold, 3 - italic, 4 - bold and italic.
Typ čiary volíme pomocou parametera lty: 0=blank, 1=solid (default), 2=dashed, 3=dotted, 4=dotdash, 5=longdash, 6=twodash.


Našou úlohou bude vykresliť distribučnú funkciu Studentovho s 15 stupňami voľnosti na intervale (-4,4).

Do premennej x načítame údaje z intervalu (-4,4) s krokom 0,1. Do premennej F načítame príslušné hodnoty distribučnej funkcie. Vykreslíme jednotlivé body.

volnost=15

dh=-4
hh=4
x = seq(dh,hh,by = 0.10)

F=pt(x,volnost)

plot(x,F)


Znázornime distribučnú funkciu Studentovho t rozdelenia s 15 stupňami volnosti na intervale (-4,4) modrou farbou.

plot(x,F, type="l", col="blue")


Znázornime kvantilovú funkciu Studentovho t rozdelenia s 15 stupňami volnosti tmavomodrou farbou.

volnost=15
x = seq(0,1,by = 0.001)

Q=qt(x, volnost)

plot(x,Q, type="l", col="darkblue")

Poznámka: Definičný obor kvantilovej funkcie je (0,1).


Vygenerujme 1500 náhodných hodnôt Studentovho rozdelenia s 12 stupňami voľnosti (sv=12). Uložme ich do premennej x.

n=1500
sv=12
x=rt(n, sv)

Vypíšme prvých dvadsať hodnôt z 1500 náhodných hodnôt Studentovho rozdelenia s 12 stupňami voľnosti vygenerovaných v predchádzajúcom príklade

head (x,20)
##  [1] -0.51440606 -0.16577596  0.94842572  0.70403194  2.03975919  0.51532118
##  [7]  0.92801839 -0.38761076 -0.74526030 -0.89001356  0.30384618  1.50729889
## [13] -0.12932737 -0.13327360 -1.11936962 -2.17421324 -0.09084435  0.23893624
## [19]  3.24908918  1.28450006


Vykreslime jadrovú funkciu pre vygenerovaných 1500 náhodných hodnôt Studentovho rozdelenia s 12 stupňami voľnosti uložených v premennej x.
Porovnajme s teoretickou funkciou hustoty t rozdelenia s 12 stupňami voľnosti na intervale (-4,4).
Na vykreslenie funkcie hustoty t(12) najskôr vygenerujeme body na intervale (-4,4) s krokom 0,10 a uložíme ich do premennej tteorx. Funkciu hustoty (dt) Studentovho rozdelenia t(12) vykreslíme v bodoch tteorx. Farba t(12) bude červená (col=“red”).

tteorx = seq(-4, 4,by = 0.10)


plot(density(x),                                  
     main = "Funkcia hustoty pre náhodne generované hodnoty t(12)",
     xlab = "hodnoty x ",
     ylab = "hustota")
lines(tteorx, dt(tteorx,12), lwd=1, col="red")

Zhrnutie:
funkcia hustoty Studentovho rozdelenia s sv stupňami voľnosti v bode x: dt(x, sv),
distribučná funkcia Studentovho rozdelenia s sv stupňami voľnosti v bode x: pt(x, sv),
k-ty kvantil Studentovho rozdelenia s sv stupňami voľnosti: qt(k, sv),
generovanie n náhodných čísiel Studentovho rozdelenia s sv stupňami voľnosti: rt(n, sv).



Literatúra:
R Core Team (2020). R: A language and environment for statistical computing. R Foundation for Statistical Computing, Vienna, Austria. URL https://www.R-project.org/.

Paneurópska vysoká škola v Bratislave
GA/2/2019 “Využitie informačných technológií pri rozvoji aplikačných možností kvantitatívnych metód v ekonómii”