Contact
CoCalc Logo Icon
StoreFeaturesDocsShareSupport News AboutSign UpSign In
| Download

All published worksheets from http://sagenb.org

Views: 168742
Image: ubuntu2004

Využití funkce RealDistribution pro zobrazení náhodných rozdělení

Program Sage využívá funkci RealDistribution ke generování běžných statistických rozdělení.

Konkrétně:

Rovnoměrné rozdělení na intervalu [a,b]

RealDistribution('uniform', [a, b])

Normální rozdělení se střední hodnotou 0 a směrodatnou odchylkou sigma

RealDistribution('gaussian', sigma)

Studentovo rozdělení t se stupněm volnosti n

RealDistribution('t', n)

Pearsonovo rozdělení chi-kvadrát se stupněm volnosti n

RealDistribution('chisquared', nu)

Graf rozdělení

K zobrazení grafu rozdělení lze využít funkci plot, výsledný graf zobrazíme funkcí show.

# graf hustoty pravděpodobnosti normálního rozdělení html("<h3>Normální rozdělení</h3>") Ndist=RealDistribution('gaussian',1) p1 = Ndist.plot((x,-3.5,3.5),color="red") p1.show(frame=true)

Normální rozdělení

# graf hustoty pravděpodobnosti Studentova rozdělení # se 6 stupni volnosti html("<h3>Studentovo rozdělení</h3>") Tdist=RealDistribution('t',5) p2 = Tdist.plot((x,-3.5,3.5),color="blue",linestyle=":") p2.show(frame=true)

Studentovo rozdělení

# spojení grafů do jednoho k porovnání průběhu obou rozdělení html("<h3>Normální a Studentovo rozdělení - porovnání</h3>") (p1+p2).show(frame=true)

Normální a Studentovo rozdělení - porovnání

Výpočty kvantilů

K výpočtu hodnot distribuční funkce rozdělení lze využít funkce cum_distribution_function. Kvantily rozdělení spočítáme pomocí funkce cum_distribution_function_inv.

# hodnota distribuční funkce normálního rozdělení pro z = 1,96 Ndist.cum_distribution_function(1.96)
\newcommand{\Bold}[1]{\mathbf{#1}}0.975002104852
# hodnota 2,5% kvantilu normálního rozdělení Ndist.cum_distribution_function_inv(0.025)
\newcommand{\Bold}[1]{\mathbf{#1}}-1.95996398454
# 95% interval spolehlivosti Studentova rozdělení p = 0.95 alfa = 1-p dm = Tdist.cum_distribution_function_inv(alfa/2) hm = Tdist.cum_distribution_function_inv(1-alfa/2) dm, hm
\newcommand{\Bold}[1]{\mathbf{#1}}\left(-2.57058183564, 2.57058183564\right)

Zobrazení intervalu spolehlivosti

K výpočtu mezí intervalu použijeme funkci cum_distribution_function_inv. Vlastní interval zobrazíme funkcí plot s parametrem fill='axis'.

Všimněte si, že obrázek grafu je složený ze dvou funkcí plot - jedna slouží k zobrazení křivky rozdělení, druhá k vyplnění plochy intervalu.

# 95% interval spolehlivosti Studentova rozdělení p=0.95 alfa=1-p dm=Tdist.cum_distribution_function_inv(alfa/2) hm=Tdist.cum_distribution_function_inv(1-alfa/2) dm, hm
\newcommand{\Bold}[1]{\mathbf{#1}}\left(-2.57058183564, 2.57058183564\right)
# graf intervalu spolehlivosti html("<h3>Interval spolehlivosti Studentova rozdělení</h3>") p3 = Tdist.plot((x,dm,hm),fill="axis",fillcolor="yellow",linestyle="") (p2+p3).show(frame=true)

Interval spolehlivosti Studentova rozdělení

# popisky mezí intervalu html("<h3>Interval spolehlivosti Studentova rozdělení</h3>") t = text('2,5%', (dm,0.05), color='red',horizontal_alignment='right',fontsize=10) t += text('97,5%', (hm,0.05), color='red',horizontal_alignment='left',fontsize=10) (p2+p3+t).show(frame=true)

Interval spolehlivosti Studentova rozdělení

# ohraničení intervalu html("<h3>Interval spolehlivosti Studentova rozdělení</h3>") l = line([(dm,0),(dm,0.03)], color='red') l += line([(hm,0),(hm,0.03)], color='red') (p2+p3+t+l).show(frame=true)

Interval spolehlivosti Studentova rozdělení

# přidáme popis intervalu v Latexovké notaci html("<h3>Interval spolehlivosti Studentova rozdělení</h3>") tx = text("$F(x)=\\int_{\\alpha/2}^{1-\\alpha/2} f(x) dx$", (0, 0.1), fontsize=14, color='black') (p2+p3+t+l+tx).show(frame=true)

Interval spolehlivosti Studentova rozdělení

Kliknutím pravým tlačítkem na graf vyvoláme menu, ze kterého lze graf kopírovat do schránky nebo uložit jako obrázek ve formátu PNG.