1 Základy práce s programovacím jazykom R

1.1 Príklad

Použijte program R ako kalkulačku a vypočítajte nasledujúce príklady:

\(2+5\times8-\sqrt{26}=\)

2+5*8-sqrt(26)
## [1] 36.90098

\(sin (90°)-log_{5}125\times tg(45°) - ln(5) =\)

sin(pi/2)-log(125,base = 5)*tan(pi/4)-log(5)
## [1] -3.609438

\(\sqrt[3]{20} + e^3-log1000=\)

20^(1/3)+exp(3)-log(1000,base=10)
## [1] 19.79995

\(\begin{pmatrix} 1\\ 2\\ 3\\ 4\\ 5 \end{pmatrix} \times 11 =\)

c(1,2,3,4,5)*11
## [1] 11 22 33 44 55

\(\begin{pmatrix} 1 & 2 & 3\\ 4 & 5 & 6 \end{pmatrix} \times \begin{pmatrix} 7 & 8\\ 9 & 10\\ 11 & 12 \end{pmatrix}=\)

matrix(c(1:6),nrow = 2,byrow = TRUE)%*%matrix(c(7,9,11,8,10,12),ncol = 2)
##      [,1] [,2]
## [1,]   58   64
## [2,]  139  154

\(\begin{vmatrix} 1 & 2 & 5\\ 3 & 4 & 7\\ 6 & 8 & 9 \end{vmatrix} =\)

det(matrix(c(1,2,5,3,4,7,6,8,9),byrow = TRUE,nrow = 3))
## [1] 10

1.2 Príklad

Vytvorte v prostredí R nasledujúce objekty:

skalár a obsahujúci hodnotu 5

a<-5
print(a)
## [1] 5

vektor b obsahujúci prvých 6 veľkých písmen latinskej abecedy

b<-LETTERS[1:6]
print(b)
## [1] "A" "B" "C" "D" "E" "F"

vektor c aritmetickej postupnosti všetkých párnych čísel od 2 do 30

c<-seq(from=2,to=30,by=2)
print(c)
##  [1]  2  4  6  8 10 12 14 16 18 20 22 24 26 28 30

vektor d prvých 6 členov geometrickej postupnosti s prvým členom rovným 1 a kvocientom 2

d<-2^(seq(from=0,by=1,length=6))
print(d)
## [1]  1  2  4  8 16 32

vektory e,f,g,h dĺžky 6 náhodných čísel od 1 do 100, pričom hodnoty v jednotlivých vektoroch sa nemôžu opakovať

set.seed(123)
e<-sample(1:100,6,replace = FALSE)
print(e)
## [1] 31 79 51 14 67 42
f<-sample(1:100,6,replace = FALSE)
print(f)
## [1] 50 43 14 25 90 91
g<-sample(1:100,6,replace = FALSE)
print(g)
## [1] 69 91 57 92  9 93
h<-sample(1:100,6,replace = FALSE)
print(h)
## [1] 99 72 26  7 42  9

jednotkovú maticu A rozmeru \(4 \times 4\)

A<-diag(4)

vektor i, ktorý predstavuje súčet vektorov e a f

i<-e+f
print(i)
## [1]  81 122  65  39 157 133

vektor j, ktorý predstavuje súčin riadkového vektora g a stĺpcového vektora h

j<-g%*%h
print(j)
##       [,1]
## [1,] 16724

maticu B rozmeru \(4 \times 6\), ktorá vznikne spojením vektorov e,f,g,h po riadkoch

B<-rbind(e,f,g,h)
print(B)
##   [,1] [,2] [,3] [,4] [,5] [,6]
## e   31   79   51   14   67   42
## f   50   43   14   25   90   91
## g   69   91   57   92    9   93
## h   99   72   26    7   42    9

maticu C, ktorá vznikne ako súčin matíc B a A

C<-B%*%A
## Error in B %*% A: non-conformable arguments

maticu D, ktorá vznikne ako súčin jednotkovej matice A a matice B

D<-A%*%B
print(D)
##      [,1] [,2] [,3] [,4] [,5] [,6]
## [1,]   31   79   51   14   67   42
## [2,]   50   43   14   25   90   91
## [3,]   69   91   57   92    9   93
## [4,]   99   72   26    7   42    9

štvorcovú maticu E obsahujúcu 36 hodnôt z normálneho rozdelenia so strednou hodnotou 5 a odchýlkou 1

set.seed(123)
E<-matrix(rnorm(36,mean = 5,sd = 1),nrow = sqrt(36))
print(E)
##          [,1]     [,2]     [,3]     [,4]     [,5]     [,6]
## [1,] 4.439524 5.460916 5.400771 5.701356 4.374961 5.426464
## [2,] 4.769823 3.734939 5.110683 4.527209 3.313307 4.704929
## [3,] 6.558708 4.313147 4.444159 3.932176 5.837787 5.895126
## [4,] 5.070508 4.554338 6.786913 4.782025 5.153373 5.878133
## [5,] 5.129288 6.224082 5.497850 3.973996 3.861863 5.821581
## [6,] 6.715065 5.359814 3.033383 4.271109 6.253815 5.688640

maticu F, ktorá predstavuje inverznú maticu k matici D

F<-solve(D)
## Error in solve.default(D): 'a' (4 x 6) must be square

maticu G, ktorá predstavuje inverznú maticu k matici E

G<-solve(E)
print(G)
##            [,1]       [,2]       [,3]       [,4]        [,5]        [,6]
## [1,] -1.1260605  1.0502472 -1.2629928  0.4630000  0.01767199  1.01785931
## [2,] -0.5901833  0.1900017 -1.3623216  0.5702274  0.28180821  0.93999246
## [3,] -0.8915813  0.4693436 -1.2789228  0.9873006  0.02989605  0.73687028
## [4,]  0.4509912  0.2489422  0.0147243 -0.2794144 -0.32462901 -0.03042119
## [5,] -0.3100120 -0.2621089 -0.7378725  0.8229072 -0.24511438  0.67768726
## [6,]  2.3629328 -1.5677963  4.2565463 -2.3051464  0.21088193 -3.02648495

maticu H, ktorá predstavuje súčin matíc E a G

H<-E%*%G
print(round(H,digits=1))
##      [,1] [,2] [,3] [,4] [,5] [,6]
## [1,]    1    0    0    0    0    0
## [2,]    0    1    0    0    0    0
## [3,]    0    0    1    0    0    0
## [4,]    0    0    0    1    0    0
## [5,]    0    0    0    0    1    0
## [6,]    0    0    0    0    0    1

maticu I, ktorá vznikne transpozíciou matice D

print(D)
##      [,1] [,2] [,3] [,4] [,5] [,6]
## [1,]   31   79   51   14   67   42
## [2,]   50   43   14   25   90   91
## [3,]   69   91   57   92    9   93
## [4,]   99   72   26    7   42    9
I<-t(D)
print(I)
##      [,1] [,2] [,3] [,4]
## [1,]   31   50   69   99
## [2,]   79   43   91   72
## [3,]   51   14   57   26
## [4,]   14   25   92    7
## [5,]   67   90    9   42
## [6,]   42   91   93    9

diagonálnu maticu J, ktorá má na hlavnej diagonále prvky vektora d

print(d)
## [1]  1  2  4  8 16 32
J<-diag(d)
print(J)
##      [,1] [,2] [,3] [,4] [,5] [,6]
## [1,]    1    0    0    0    0    0
## [2,]    0    2    0    0    0    0
## [3,]    0    0    4    0    0    0
## [4,]    0    0    0    8    0    0
## [5,]    0    0    0    0   16    0
## [6,]    0    0    0    0    0   32

vektor k, ktorý pozostáva z diagonálnych prvkov matice G

print(G)
##            [,1]       [,2]       [,3]       [,4]        [,5]        [,6]
## [1,] -1.1260605  1.0502472 -1.2629928  0.4630000  0.01767199  1.01785931
## [2,] -0.5901833  0.1900017 -1.3623216  0.5702274  0.28180821  0.93999246
## [3,] -0.8915813  0.4693436 -1.2789228  0.9873006  0.02989605  0.73687028
## [4,]  0.4509912  0.2489422  0.0147243 -0.2794144 -0.32462901 -0.03042119
## [5,] -0.3100120 -0.2621089 -0.7378725  0.8229072 -0.24511438  0.67768726
## [6,]  2.3629328 -1.5677963  4.2565463 -2.3051464  0.21088193 -3.02648495
k<-diag(G)
print(k)
## [1] -1.1260605  0.1900017 -1.2789228 -0.2794144 -0.2451144 -3.0264850

maticu K, ktorá je definovaná nasledovne \(K=(E^{T} \times E)^{-1}\) a vypočítajte jej determinant

print(E)
##          [,1]     [,2]     [,3]     [,4]     [,5]     [,6]
## [1,] 4.439524 5.460916 5.400771 5.701356 4.374961 5.426464
## [2,] 4.769823 3.734939 5.110683 4.527209 3.313307 4.704929
## [3,] 6.558708 4.313147 4.444159 3.932176 5.837787 5.895126
## [4,] 5.070508 4.554338 6.786913 4.782025 5.153373 5.878133
## [5,] 5.129288 6.224082 5.497850 3.973996 3.861863 5.821581
## [6,] 6.715065 5.359814 3.033383 4.271109 6.253815 5.688640
K<-solve(t(E)%*%E)
print(K)
##             [,1]        [,2]        [,3]       [,4]       [,5]       [,6]
## [1,]   5.2169012   3.8105087   4.3198503 -0.4310594  2.0722054 -13.827458
## [2,]   3.8105087   3.5284981   3.6217399 -0.5183358  2.1755723 -11.591135
## [3,]   4.3198503   3.6217399   4.1694781 -0.6120747  2.4015601 -12.786071
## [4,]  -0.4310594  -0.5183358  -0.6120747  0.4499639 -0.3869042   1.405748
## [5,]   2.0722054   2.1755723   2.4015601 -0.3869042  1.9057817  -7.462015
## [6,] -13.8274584 -11.5911347 -12.7860705  1.4057477 -7.4620146  40.677405
det(K)
## [1] 0.0004340166

1.3 Príklad

S využitím objektov definovaných v predchádzajúcom príklade vypočítajte:

súčet hodnôt vektora c

print(c)
##  [1]  2  4  6  8 10 12 14 16 18 20 22 24 26 28 30
sum(c)
## [1] 240

súčin hodnôt vektora d

print(d)
## [1]  1  2  4  8 16 32
prod(d)
## [1] 32768

najmenšiu a najväčšiu hodnotu v matici E, rozsah hodnôt matice E

print(E)
##          [,1]     [,2]     [,3]     [,4]     [,5]     [,6]
## [1,] 4.439524 5.460916 5.400771 5.701356 4.374961 5.426464
## [2,] 4.769823 3.734939 5.110683 4.527209 3.313307 4.704929
## [3,] 6.558708 4.313147 4.444159 3.932176 5.837787 5.895126
## [4,] 5.070508 4.554338 6.786913 4.782025 5.153373 5.878133
## [5,] 5.129288 6.224082 5.497850 3.973996 3.861863 5.821581
## [6,] 6.715065 5.359814 3.033383 4.271109 6.253815 5.688640
min(E)
## [1] 3.033383
max(E)
## [1] 6.786913
c(min(E),max(E))
## [1] 3.033383 6.786913
range(E)
## [1] 3.033383 6.786913

dĺžku vektora c a rozmer matice H

print(c)
##  [1]  2  4  6  8 10 12 14 16 18 20 22 24 26 28 30
length(c)
## [1] 15
print(round(H,digits=1))
##      [,1] [,2] [,3] [,4] [,5] [,6]
## [1,]    1    0    0    0    0    0
## [2,]    0    1    0    0    0    0
## [3,]    0    0    1    0    0    0
## [4,]    0    0    0    1    0    0
## [5,]    0    0    0    0    1    0
## [6,]    0    0    0    0    0    1
dim(H)
## [1] 6 6

aritmetický priemer hodnôt matice E a výberovú štandardnú odchýlku hodnôt tejto matice

print(E)
##          [,1]     [,2]     [,3]     [,4]     [,5]     [,6]
## [1,] 4.439524 5.460916 5.400771 5.701356 4.374961 5.426464
## [2,] 4.769823 3.734939 5.110683 4.527209 3.313307 4.704929
## [3,] 6.558708 4.313147 4.444159 3.932176 5.837787 5.895126
## [4,] 5.070508 4.554338 6.786913 4.782025 5.153373 5.878133
## [5,] 5.129288 6.224082 5.497850 3.973996 3.861863 5.821581
## [6,] 6.715065 5.359814 3.033383 4.271109 6.253815 5.688640
mean(E)
## [1] 5.055604
sd(E)
## [1] 0.9389356

hodnotu v druhom riadku a treťom stĺpci matice E, hodnoty v štvrtom riadku matice E

print(E)
##          [,1]     [,2]     [,3]     [,4]     [,5]     [,6]
## [1,] 4.439524 5.460916 5.400771 5.701356 4.374961 5.426464
## [2,] 4.769823 3.734939 5.110683 4.527209 3.313307 4.704929
## [3,] 6.558708 4.313147 4.444159 3.932176 5.837787 5.895126
## [4,] 5.070508 4.554338 6.786913 4.782025 5.153373 5.878133
## [5,] 5.129288 6.224082 5.497850 3.973996 3.861863 5.821581
## [6,] 6.715065 5.359814 3.033383 4.271109 6.253815 5.688640
E[2,3]
## [1] 5.110683
E[4,]
## [1] 5.070508 4.554338 6.786913 4.782025 5.153373 5.878133

riadkové a stĺpcové súčty matice D

print(D)
##      [,1] [,2] [,3] [,4] [,5] [,6]
## [1,]   31   79   51   14   67   42
## [2,]   50   43   14   25   90   91
## [3,]   69   91   57   92    9   93
## [4,]   99   72   26    7   42    9
rowSums(D)
## [1] 284 313 411 255
colSums(D)
## [1] 249 285 148 138 208 235

riadkové a stĺpcové aritmetické priemery matice D

print(D)
##      [,1] [,2] [,3] [,4] [,5] [,6]
## [1,]   31   79   51   14   67   42
## [2,]   50   43   14   25   90   91
## [3,]   69   91   57   92    9   93
## [4,]   99   72   26    7   42    9
rowMeans(D)
## [1] 47.33333 52.16667 68.50000 42.50000
colMeans(D)
## [1] 62.25 71.25 37.00 34.50 52.00 58.75

riadkové a stĺpcové maximá matice D

print(D)
##      [,1] [,2] [,3] [,4] [,5] [,6]
## [1,]   31   79   51   14   67   42
## [2,]   50   43   14   25   90   91
## [3,]   69   91   57   92    9   93
## [4,]   99   72   26    7   42    9
apply(D,1,max)
## [1] 79 91 93 99
apply(D,2,max)
## [1] 99 91 57 92 90 93

na maticiach K a E ukážte, že transpozícia súčinu matíc je rovná súčinu tranpozícií matíc v opačnom poradí

print(K)
##             [,1]        [,2]        [,3]       [,4]       [,5]       [,6]
## [1,]   5.2169012   3.8105087   4.3198503 -0.4310594  2.0722054 -13.827458
## [2,]   3.8105087   3.5284981   3.6217399 -0.5183358  2.1755723 -11.591135
## [3,]   4.3198503   3.6217399   4.1694781 -0.6120747  2.4015601 -12.786071
## [4,]  -0.4310594  -0.5183358  -0.6120747  0.4499639 -0.3869042   1.405748
## [5,]   2.0722054   2.1755723   2.4015601 -0.3869042  1.9057817  -7.462015
## [6,] -13.8274584 -11.5911347 -12.7860705  1.4057477 -7.4620146  40.677405
print(E)
##          [,1]     [,2]     [,3]     [,4]     [,5]     [,6]
## [1,] 4.439524 5.460916 5.400771 5.701356 4.374961 5.426464
## [2,] 4.769823 3.734939 5.110683 4.527209 3.313307 4.704929
## [3,] 6.558708 4.313147 4.444159 3.932176 5.837787 5.895126
## [4,] 5.070508 4.554338 6.786913 4.782025 5.153373 5.878133
## [5,] 5.129288 6.224082 5.497850 3.973996 3.861863 5.821581
## [6,] 6.715065 5.359814 3.033383 4.271109 6.253815 5.688640
t(K%*%E)
##            [,1]       [,2]       [,3]         [,4]        [,5]       [,6]
## [1,] -14.740385 -11.803221 -12.845003  1.336202615  -6.9665789  41.469354
## [2,]  -1.824989  -1.337370  -1.270156  0.245810780  -0.0953088   4.030406
## [3,]  33.370831  27.991030  30.634185 -2.506364402  18.1997528 -98.835093
## [4,]  11.095811   8.600656   9.426634 -0.592738028   4.9593144 -30.781899
## [5,] -20.025713 -17.253458 -18.601836  2.439512169 -11.0061000  59.274099
## [6,]   2.573811   2.310160   2.708803  0.003228667   2.0098308  -8.723587
t(E)%*%t(K)
##            [,1]       [,2]       [,3]         [,4]        [,5]       [,6]
## [1,] -14.740385 -11.803221 -12.845003  1.336202615  -6.9665789  41.469354
## [2,]  -1.824989  -1.337370  -1.270156  0.245810780  -0.0953088   4.030406
## [3,]  33.370831  27.991030  30.634185 -2.506364402  18.1997528 -98.835093
## [4,]  11.095811   8.600656   9.426634 -0.592738028   4.9593144 -30.781899
## [5,] -20.025713 -17.253458 -18.601836  2.439512169 -11.0061000  59.274099
## [6,]   2.573811   2.310160   2.708803  0.003228667   2.0098308  -8.723587
identical(t(K%*%E),t(E)%*%t(K))
## [1] TRUE

na maticiach K a E ukážte, že inverzia súčinu matíc je rovná súčinu inverzií matíc v opačnom poradí

print(K)
##             [,1]        [,2]        [,3]       [,4]       [,5]       [,6]
## [1,]   5.2169012   3.8105087   4.3198503 -0.4310594  2.0722054 -13.827458
## [2,]   3.8105087   3.5284981   3.6217399 -0.5183358  2.1755723 -11.591135
## [3,]   4.3198503   3.6217399   4.1694781 -0.6120747  2.4015601 -12.786071
## [4,]  -0.4310594  -0.5183358  -0.6120747  0.4499639 -0.3869042   1.405748
## [5,]   2.0722054   2.1755723   2.4015601 -0.3869042  1.9057817  -7.462015
## [6,] -13.8274584 -11.5911347 -12.7860705  1.4057477 -7.4620146  40.677405
print(E)
##          [,1]     [,2]     [,3]     [,4]     [,5]     [,6]
## [1,] 4.439524 5.460916 5.400771 5.701356 4.374961 5.426464
## [2,] 4.769823 3.734939 5.110683 4.527209 3.313307 4.704929
## [3,] 6.558708 4.313147 4.444159 3.932176 5.837787 5.895126
## [4,] 5.070508 4.554338 6.786913 4.782025 5.153373 5.878133
## [5,] 5.129288 6.224082 5.497850 3.973996 3.861863 5.821581
## [6,] 6.715065 5.359814 3.033383 4.271109 6.253815 5.688640
solve(K%*%E)
##            [,1]       [,2]       [,3]       [,4]       [,5]       [,6]
## [1,]  17.953912  21.937166  11.595716 15.6099402  16.436836  18.499788
## [2,]   5.097770   3.160815  -7.488315  0.3733893   5.836110   1.360577
## [3,]  -8.435445  -4.545785 -12.937097 -5.5467245  -6.553710  -9.221727
## [4,]  26.101243  23.592965  21.995815 19.6565455  22.222505  25.905911
## [5,] -12.678957 -11.268688 -13.581543 -9.1083935 -10.928081 -13.463320
## [6,]   5.023351  -2.571777  28.339083  5.9714503   2.416478  10.045056
solve(E)%*%solve(K)
##            [,1]       [,2]       [,3]       [,4]       [,5]       [,6]
## [1,]  17.953912  21.937166  11.595716 15.6099402  16.436836  18.499788
## [2,]   5.097770   3.160815  -7.488315  0.3733893   5.836110   1.360577
## [3,]  -8.435445  -4.545785 -12.937097 -5.5467245  -6.553710  -9.221727
## [4,]  26.101243  23.592965  21.995815 19.6565455  22.222505  25.905911
## [5,] -12.678957 -11.268688 -13.581543 -9.1083935 -10.928081 -13.463320
## [6,]   5.023351  -2.571777  28.339083  5.9714503   2.416478  10.045056

1.4 Príklad

Prostredníctvom R riešte úlohy:

vytvorte vektor, z desiatich jednotiek, dvadsiatich dvojek a tridsiatich trojek

c(rep(1,10),rep(2,20),rep(3,30))
##  [1] 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3
## [36] 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3

vytvorte vektor s hodnotami \(e^x . cos(x)\) pre \(x=4; 4,2; 4,4; ..., 6\)

x<-seq(from=4,to=6,by=0.2)
exp(x)*cos(x)
##  [1] -35.68773 -32.69370 -25.03253 -11.15742  10.63204  42.09920  84.92907
##  [8] 140.52508 209.73349 292.48671 387.36034

vypočítajte nasledujúci súčet \(\sum_{i=1}^{100} \left (\frac{2^i}{i} + \frac{3^i}{i^2} \right )\)

i<-1:100
sum(2^i/i+3^i/i^2)
## [1] 7.810378e+43

s využitím funkcie paste() vytvorte nasledujúci vektor dĺžky 30: (“a 1”, “a 2”, …, “a 30”)

paste("a",1:30)
##  [1] "a 1"  "a 2"  "a 3"  "a 4"  "a 5"  "a 6"  "a 7"  "a 8"  "a 9"  "a 10"
## [11] "a 11" "a 12" "a 13" "a 14" "a 15" "a 16" "a 17" "a 18" "a 19" "a 20"
## [21] "a 21" "a 22" "a 23" "a 24" "a 25" "a 26" "a 27" "a 28" "a 29" "a 30"

s využitím funkcie paste() vytvorte nasledujúci vektor dĺžky 30: (“a1”, “a2”, …, “a30”)

paste("a",1:30,sep = "")
##  [1] "a1"  "a2"  "a3"  "a4"  "a5"  "a6"  "a7"  "a8"  "a9"  "a10" "a11"
## [12] "a12" "a13" "a14" "a15" "a16" "a17" "a18" "a19" "a20" "a21" "a22"
## [23] "a23" "a24" "a25" "a26" "a27" "a28" "a29" "a30"

1.5 Príklad

S využitím grafických nástrojov R riešte nasledujúce úlohy:

vytvorte vektory n1 a n2 dĺžky 40 z normovane normálne rozdelených hodnôt

set.seed(123)
n1<-rnorm(40)
print(n1)
##  [1] -0.56047565 -0.23017749  1.55870831  0.07050839  0.12928774
##  [6]  1.71506499  0.46091621 -1.26506123 -0.68685285 -0.44566197
## [11]  1.22408180  0.35981383  0.40077145  0.11068272 -0.55584113
## [16]  1.78691314  0.49785048 -1.96661716  0.70135590 -0.47279141
## [21] -1.06782371 -0.21797491 -1.02600445 -0.72889123 -0.62503927
## [26] -1.68669331  0.83778704  0.15337312 -1.13813694  1.25381492
## [31]  0.42646422 -0.29507148  0.89512566  0.87813349  0.82158108
## [36]  0.68864025  0.55391765 -0.06191171 -0.30596266 -0.38047100
n2<-rnorm(40)
print(n2)
##  [1] -0.69470698 -0.20791728 -1.26539635  2.16895597  1.20796200
##  [6] -1.12310858 -0.40288484 -0.46665535  0.77996512 -0.08336907
## [11]  0.25331851 -0.02854676 -0.04287046  1.36860228 -0.22577099
## [16]  1.51647060 -1.54875280  0.58461375  0.12385424  0.21594157
## [21]  0.37963948 -0.50232345 -0.33320738 -1.01857538 -1.07179123
## [26]  0.30352864  0.44820978  0.05300423  0.92226747  2.05008469
## [31] -0.49103117 -2.30916888  1.00573852 -0.70920076 -0.68800862
## [36]  1.02557137 -0.28477301 -1.22071771  0.18130348 -0.13889136

z vektora n1 vytvorte bodový graf

plot(n1,main="Bodový graf z vektora n1")

z vektora n2 vytvorte čiarový graf

plot(n2,main="Čiarový graf z vektora n2",type="l")

z vektora n1 vytvorte krabicový graf (boxplot)

boxplot(n1,main="Krabicový graf z vektora n1")

vytvorte histogram z kombinácie hodnôt vektorov n1 a n2

hist(c(n1,n2),ylab = "absolútna početnosť",main = "Histogram z vektorov n1 a n2")

z vektorov n1 a n2 vytvorte bodový diagram

plot(n1,n2,main = "Bodový diagram závislosti n1 a n2")

vytvorte vektor s hodnotami počtu obyvateľov krajín V4
  • Poľsko: 37 000 000
  • Česko: 10 500 000
  • Maďarsko: 10 000 000
  • Slovensko: 5 500 000
  • populacia<-c(37000000,10500000,10000000,5500000)
    names(populacia)<-c("Poľsko","Česko","Maďarsko","Slovensko")
    print(populacia)
    ##    Poľsko     Česko  Maďarsko Slovensko 
    ##  37000000  10500000  10000000   5500000

    z údajov o počte obyvateľov krajín V4 vytvorte koláčový graf

    pie(populacia,main="Koláčový graf populácie krajín V4")

    z údajov o počte obyvateľov krajín V4 vypočítajte relatívne početnosti počtu obyvateľov jednotlivých krajín

    populacia/sum(populacia)
    ##     Poľsko      Česko   Maďarsko  Slovensko 
    ## 0.58730159 0.16666667 0.15873016 0.08730159

    graficky zhodnoťte normalitu rozdelenia vektora n1 pomocou kvantilového grafu

    qqnorm(n1,main="Kvantilový graf hodnôt vektora n1")
    abline(0,1)

    2 Import a spracovanie údajov

    Vyskúšajte si import údajov do R z rôznych zdrojov:

    rôzne datasety, ktoré sú priamo k dispozícii

    data()

    Niektoré vybrané datasety:

    AirPassengers Monthly Airline Passenger Numbers 1949-1960

    ChickWeight Weight versus age of chicks on different diets

    EuStockMarkets Daily Closing Prices of Major European Stock Indices, 1991-1998

    mtcars Motor Trend Car Road Tests

    PlantGrowth Results from an Experiment on Plant Growth

    cars Speed and Stopping Distances of Cars

    women Average Heights and Weights for American Women

    informácie o konkrétnom datasete

    ?mtcars

    Motor Trend Car Road Tests

    Description

    The data was extracted from the 1974 Motor Trend US magazine, and comprises fuel consumption and 10 aspects of automobile design and performance for 32 automobiles (1973–74 models).

    mtcars

    načítanie z internetovej stránky

    zdroj <- "http://www.sthda.com/sthda/RDoc/data/housetasks.txt"
    data01 <- read.delim(zdroj, row.names = 1)
    data01

    načítanie z formátu .txt

    mtcars.txt

    data02 <- read.delim("mtcars.txt",sep = ",",row.names = 1)
    data02

    načítanie z formátu .csv

    mtcarsA.csv

    data03 <- read.csv2("mtcarsA.csv",row.names = 1)
    data03

    mtcarsB.csv

    data04 <- read.csv("mtcarsB.csv",row.names = 1)
    data04

    načítanie z formátu .xlsx

    data.xlsx

    library(openxlsx)
    ## Warning: package 'openxlsx' was built under R version 3.6.1
    data05 <- read.xlsx("data.xlsx",sheet = 1, rowNames = TRUE)
    ## Error in read.xlsx.default("data.xlsx", sheet = 1, rowNames = TRUE): File does not exist.
    data05
    ## Error in eval(expr, envir, enclos): object 'data05' not found
    boxplot(data05$mpg~data05$cyl,main="Krabicové grafy spotreby automobilov v závislosti na počte valcov",xlab="počet valcov",ylab="spotreba v míľach na galón")
    ## Error in eval(predvars, data, env): object 'data05' not found
    hist(data05$mpg,main = "Histogram spotreby automobilov v míľach na galón",xlab="spotreba automobilov",ylab = "absolútna početnosť")
    ## Error in hist(data05$mpg, main = "Histogram spotreby automobilov v míľach na galón", : object 'data05' not found
    data06 <- read.xlsx("data.xlsx",sheet = 2, rowNames = FALSE)
    ## Error in read.xlsx.default("data.xlsx", sheet = 2, rowNames = FALSE): File does not exist.
    data06
    ## Error in eval(expr, envir, enclos): object 'data06' not found
    plot(data06$y~data06$x,xlab = "x",ylab = "y",main = "Bodový diagram závislosti y od x")
    ## Error in eval(predvars, data, env): object 'data06' not found

    3 Popisná štatistika

    3.1 Príklad

    V databáze vysledky.csv sú uvedené výsledky náhodne vybraných študentov z predmetu štatistika.

    načítajte údaje do programu R

    vysledky<-read.csv2("vysledky.csv")
    head(vysledky)

    pretransformujte hodnoty do vektora s rovnakým názvom

    vysledky<-unlist(vysledky)
    vysledky
    ##   vysledky1   vysledky2   vysledky3   vysledky4   vysledky5   vysledky6 
    ##          30          64          71         100          25          60 
    ##   vysledky7   vysledky8   vysledky9  vysledky10  vysledky11  vysledky12 
    ##          94         100          33          46          53          40 
    ##  vysledky13  vysledky14  vysledky15  vysledky16  vysledky17  vysledky18 
    ##          53          82          66          52          26          91 
    ##  vysledky19  vysledky20  vysledky21  vysledky22  vysledky23  vysledky24 
    ##          49          56          69          41          44          76 
    ##  vysledky25  vysledky26  vysledky27  vysledky28  vysledky29  vysledky30 
    ##          67          74          40          45          73          92 
    ##  vysledky31  vysledky32  vysledky33  vysledky34  vysledky35  vysledky36 
    ##          46          67         100          25          63          48 
    ##  vysledky37  vysledky38  vysledky39  vysledky40  vysledky41  vysledky42 
    ##          46           5          32          90          96          85 
    ##  vysledky43  vysledky44  vysledky45  vysledky46  vysledky47  vysledky48 
    ##          83          60          95          90          21          37 
    ##  vysledky49  vysledky50  vysledky51  vysledky52  vysledky53  vysledky54 
    ##          48          94          42          32          81          67 
    ##  vysledky55  vysledky56  vysledky57  vysledky58  vysledky59  vysledky60 
    ##          54          36          58          59          43          47 
    ##  vysledky61  vysledky62  vysledky63  vysledky64  vysledky65  vysledky66 
    ##          63          42         100          46          46          84 
    ##  vysledky67  vysledky68  vysledky69  vysledky70  vysledky71  vysledky72 
    ##          25          73          17          75          81          51 
    ##  vysledky73  vysledky74  vysledky75  vysledky76  vysledky77  vysledky78 
    ##          76          83          88          26          49          73 
    ##  vysledky79  vysledky80  vysledky81  vysledky82  vysledky83  vysledky84 
    ##          30          52          32          98          45          96 
    ##  vysledky85  vysledky86  vysledky87  vysledky88  vysledky89  vysledky90 
    ##          47          12          30          19          56          86 
    ##  vysledky91  vysledky92  vysledky93  vysledky94  vysledky95  vysledky96 
    ##          56          61          82          39          97          63 
    ##  vysledky97  vysledky98  vysledky99 vysledky100 
    ##          56          61          20          84

    zobrazte histogram výsledkov

    hist(vysledky,main = "Histogram výsledkov z predmetu štatistika", xlab="výsledok z predmetu štatistika",ylab = "absolútna početnosť")

    určte aký je počet študentov

    length(vysledky)
    ## [1] 100

    určte maximálny, minimálny počet bodov a rozsah počtu bodov

    min(vysledky)
    ## [1] 5
    max(vysledky)
    ## [1] 100
    range(vysledky)
    ## [1]   5 100
    range(vysledky)[2]-range(vysledky)[1]
    ## [1] 95

    vypočítajte priemerný počet bodov získaných zo škúsky z predmetu štatistika

    \(\overline{x}=\frac{\sum_{i=1}^{n}{x_i}}{n}\)

    sum(vysledky)/length(vysledky)
    ## [1] 58.82
    mean(vysledky)
    ## [1] 58.82

    vypočítajte výberový rozptyl počtu bodov získaných zo skúšky z predmetu štatistika

    \(s_{x}^{2}=\frac{\sum_{i=1}^{n}(x_i-\overline{x})^2}{n-1}\)

    sum((vysledky-mean(vysledky))^2)/(length(vysledky)-1)
    ## [1] 579.4016
    var(vysledky)
    ## [1] 579.4016

    vypočítajte výberovú smerodajnú odchýlku počtu bodov získaných zo skúšky z predmetu štatistika

    \(s_{x}=\sqrt{s_{x}^{2}}=\sqrt{\frac{\sum_{i=1}^{n}(x_i-\overline{x})^2}{n-1}}\)

    sqrt(sum((vysledky-mean(vysledky))^2)/(length(vysledky)-1))
    ## [1] 24.07076
    sd(vysledky)
    ## [1] 24.07076

    vypočítajte základné výberové charakteristiky počtu bodov získaných zo skúšky z predmetu štatistika a vykreslite ich v krabicovom grafe

    summary(vysledky)
    ##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
    ##    5.00   42.00   56.00   58.82   81.00  100.00
    boxplot(vysledky)

    3.2 Príklad

    Priemerná hmotnosť žien je 60 kg. Priemerná hmotnosť mužov je 75 kg. Aká bude priemerná hmostnosť skupiny vytvorenej z 40 žien a 60 mužov?

    \(\overline{x}=\frac{\sum_{i=1}^{k}x_i n_i}{\sum_{i=1}^{k}n_i}\)

    vytvorte funkciu na výpočet váženého aritmetického priemeru

    vazenyAritP<-function(hodnoty,vahy) {
      return(sum(hodnoty*vahy)/sum(vahy))
    }

    vypočítajte priemernú hmotnosť danej skupiny

    vazenyAritP(hodnoty = c(60,75),vahy = c(40, 60))
    ## [1] 69

    3.3 Príklad

    V tabuľke je uvedený priemerný ročný obrat v piatich mestách a počet pobočiek konkrétnej firmy (v mil. Kč). Vypočítajte priemerný ročný obrat za celú firmu.

    Mesto Priemerný ročný obrat Počet pobočiek
    A 15,5 3
    B 16,1 8
    C 21,2 1
    D 18,9 25
    E 20,3 11
    vazenyAritP(hodnoty = c(15.5,16.1,21.2,18.9,20.3),vahy = c(3,8,1,25,11))
    ## [1] 18.58958

    3.4 Príklad

    Auto išlo z mesta A do mesta B rýchlosťou 50 km/h a späť rýchlosťou 70 km/h. Aká je priemerná rýchlosť vozidla na celej trase?

    \(\overline{x}_H=\frac{n}{\sum_{i=1}^{n}\frac{1}{x_i}}\)

    vytvorte funkciu na výpočet harmonického priemeru

    harP1<-function(hodnoty) {
    return(length(hodnoty)/sum(1/hodnoty))
    }
    harP2<-function(hodnoty) {
    return(1/mean(1/hodnoty))
    }

    vypočítajte priemernú rýchlosť vozidla na celej trase

    harP1(c(50,70))
    ## [1] 58.33333
    harP2(c(50,70))
    ## [1] 58.33333

    3.5 Príklad

    Vypočítajte priemernú rýchlosť auta, ktoré šlo na piatich rovnakých úsekoch postupne rýchlosťami 40, 50, 60, 70, 80 km/h.

    harP1(seq(from=40,to=80,by=10))
    ## [1] 56.52759
    harP2(seq(from=40,to=80,by=10))
    ## [1] 56.52759

    3.6 Príklad

    Auto išlo z mesta A do mesta B rýchlosťou 50 km/h a z mesta B do mesta C rýchlosťou 70 km/h. Aká je priemerná rýchlosť vozidla na celej trase ak vieme, že vzdialenosť mesta A od mesta B je 10 km a vzdialenosť mesta B od mesta C je 6 km?

    \(\overline{x}_H=\frac{\sum_{i=1}^{k}n_i}{\sum_{i=1}^{k}\frac{n_i}{x_i}}\)

    vytvorte funkciu na výpočet váženého harmonického priemeru

    vazenyHarP<-function(hodnoty,vahy) {
    return(sum(vahy)/sum(vahy/hodnoty))
    }

    vypočítajte priemernú rýchlosť vozidla na celej trase

    vazenyHarP(hodnoty = c(50,70),vahy = c(10,6))
    ## [1] 56

    3.7 Príklad

    Vypočítajte priemerný čas na výrobu jednej súčiastky, ak vieme, že sa používajú dva stroje: na staršom trvá výroba šesť minút a na novšom štyri minúty, pričom do výroby sú zapojené tri staršie stroje a šesť novších strojov.

    vazenyHarP(hodnoty = c(6,4),vahy = c(3,6))
    ## [1] 4.5

    3.8 Príklad

    V rokoch 2014 až 2016 každoročne došlo k poklesu produkcie o 3 % vzhľadom na predchádzajúci rok. V roku 2017 oproti roku 2016 produkcia poklesla o 5 % a v roku 2018 oproti predchádzajúcemu roku došlo k poklesu o 8 %. Vypočítajte priemerný ročný pokles produkcie od roku 2013 do roku 2018 v %.

    \(\overline{x}_G = \sqrt[n]{\prod_{i=1}^{n}x_i}=\sqrt[n]{x_1\cdot x_2 \cdot \cdots \cdot x_n}\)

    vytvorte funkciu na výpočet geometrického priemeru

    geomP<-function(hodnoty){
    return(prod(hodnoty)^(1/length(hodnoty)))
    }

    vytvorte vektor s ročnými koeficientami rastu

    koeficientyRastu<-c(0.97,0.97,0.97,0.95,0.92)
    names(koeficientyRastu)<-2014:2018
    print(koeficientyRastu)
    ## 2014 2015 2016 2017 2018 
    ## 0.97 0.97 0.97 0.95 0.92

    vypočítajte priemerný ročný pokles produkcie od roku 2013 do roku 2018

    geomP(koeficientyRastu)
    ## [1] 0.9557963
    print(paste("Priemerný ročný pokles produkcie od roku 2013 do roku 2018 je",1-geomP(koeficientyRastu)))
    ## [1] "Priemerný ročný pokles produkcie od roku 2013 do roku 2018 je 0.0442037393862929"

    3.9 Príklad

    V rokoch 2014 až 2016 každoročne došlo k poklesu produkcie o 4 % vzhľadom na predchádzajúci rok. V roku 2017 oproti roku 2016 produkcia vzrástla o 15 % a v roku 2018 oproti predchádzajúcemu roku došlo k poklesu o 1 %. Vypočítajte priemerný ročný nárast/pokles produkcie od roku 2013 do roku 2018 v %.

    vytvorte vektor s ročnými koeficientami rastu

    koeficientyRastu<-c(0.96,0.96,0.96,1.15,0.99)
    names(koeficientyRastu)<-2014:2018
    print(koeficientyRastu)
    ## 2014 2015 2016 2017 2018 
    ## 0.96 0.96 0.96 1.15 0.99

    vypočítajte priemerný ročný nárast/pokles produkcie od roku 2013 do roku 2018

    geomP(koeficientyRastu)
    ## [1] 1.00145
    print(paste("Priemerný ročný nárast produkcie od roku 2013 do roku 2018 je",geomP(koeficientyRastu)-1))
    ## [1] "Priemerný ročný nárast produkcie od roku 2013 do roku 2018 je 0.00145017508058842"

    3.10 Príklad

    Hodnota priemernej mesačnej mzdy v národnom hospodárstve na Slovensku bola v roku 2012 na úrovni 770 €. V roku 2018 bola na úrovni 980 €. Vypočítajte priemerný ročný nárast/pokles hodnoty priemernej mesačnej mzdy za toto obdobie.

    \(\overline{x}_G = \sqrt[6]{\frac{x_{2018}}{x_{2012}}}\)

    priemernyRocnyNarast<-(980/770)^(1/6)
    print(priemernyRocnyNarast)
    ## [1] 1.041012
    print(paste("Priemerný ročný nárast hodnoty priemernej mesačnej mzdy za toto obdobie je",priemernyRocnyNarast-1))
    ## [1] "Priemerný ročný nárast hodnoty priemernej mesačnej mzdy za toto obdobie je 0.0410123739234933"
    print(770*priemernyRocnyNarast^6)
    ## [1] 980

    3.11 Príklad

    Ročná úroková sadzba na termínovanom vklade pre privátnych klientov banky je 2,5 %. Na účet je vložená čiastka 100 000 € (pri tejto čiastke banka považuje klienta za privátneho). Výbery z účtu ani daň z úroku neuvažujeme.

    \(FV=PV\times(1+i)^n\)

    vytvorte funkciu na výpočet budúcej hodnoty vkladu pri úrokovej miere i za n rokov pri znalosti súčasnej hodnoty vkladu PV

    FV<-function(PV,n,i){
      return(PV*(1+i)^n)
    }

    vypočítajte výslednú čiastku na účte po 10 rokoch

    FV(PV=100000,i=0.025,n=10)
    ## [1] 128008.5

    vypočítajte výslednú čiastku na účte po 20 rokoch

    FV(PV=100000,i=0.025,n=20)
    ## [1] 163861.6

    vypočítajte celkový absolútny prírastok hodnoty na účte za 10 rokov

    FV(PV=100000,i=0.025,n=10)-100000
    ## [1] 28008.45

    vypočítajte celkový absolútny prírastok hodnoty na účte za 20 rokov

    FV(PV=100000,i=0.025,n=20)-100000
    ## [1] 63861.64

    vypočítajte celkový relatívny prírastok hodnoty na účte za 10 rokov

    FV(PV=100000,i=0.025,n=10)/100000
    ## [1] 1.280085

    vypočítajte celkový relatívny prírastok hodnoty na účte za 20 rokov

    FV(PV=100000,i=0.025,n=20)/100000
    ## [1] 1.638616

    vypočítajte priemerný relatívny prírastok hodnoty na účte za 10 rokov

    \(\overline{x}_G = \sqrt[n]{\frac{FV}{PV}}\)

    (FV(PV=100000,i=0.025,n=10)/100000)^(1/10)
    ## [1] 1.025

    vypočítajte priemerný relatívny prírastok hodnoty na účte za 1234 rokov

    (FV(PV=100000,i=0.025,n=1234)/100000)^(1/1234)
    ## [1] 1.025

    3.12 Príklad

    Uvažujme termínovaný účet úročený ročnou úrokovou mierou 1,5 %. Akú čiastku by sme museli vložiť na tento účet, ak chceme aby po desiatich rokoch bola výsledná hodnota 58 027 €? Výbery z účtu ani daň z úroku neuvažujeme.

    \(PV=\frac{FV}{(1+i)^n}\)

    vytvorte funkciu na výpočet súčasnej hodnoty vkladu pri úrokovej miere i za n rokov pri znalosti budúcej hodnoty vkladu FV

    PV<-function(FV,n,i){
      return(FV/((1+i)^n))
    }

    vypočítajte súčasnú hodnotu vkladu

    sucasnaHodnota<-PV(FV=58027,n=10,i=0.015)
    print(sucasnaHodnota)
    ## [1] 49999.96
    print(paste("Vklad, ktorého budúca hodnota o 10 rokov pri úrokovej miere 1,5 % bude 58 027 Eur má hodnotu",round(sucasnaHodnota),"Eur."))
    ## [1] "Vklad, ktorého budúca hodnota o 10 rokov pri úrokovej miere 1,5 % bude 58 027 Eur má hodnotu 50000 Eur."

    3.13 Príklad

    Vypočítajte aritmetický priemer, výberový rozptyl a smerodajnú odchýlku z nasledujúcich hodnôt a porovnajte variabilitu oboch skupín. Hodnoty sú v rovnakých merných jednotkách.

    1. 0, 1, 2, 2, 3, 4

    2. -3, -2, 4, -7, 8, 12

    \(\overline{x}=\frac{\sum_{i=1}^{n}{x_i}}{n}\)

    a<-c(0,1,2,2,3,4)
    b<-c(-3,-2,4,-7,8,12)
    sum(a)/length(a)
    ## [1] 2
    mean(a)
    ## [1] 2
    sum(b)/length(b)
    ## [1] 2
    mean(b)
    ## [1] 2

    \(s_{x}^{2}=\frac{\sum_{i=1}^{n}(x_i-\overline{x})^2}{n-1}\)

    sum((a-mean(a))^2)/(length(a)-1)
    ## [1] 2
    var(a)
    ## [1] 2
    sum((b-mean(b))^2)/(length(b)-1)
    ## [1] 52.4
    var(b)
    ## [1] 52.4

    \(s_{x}=\sqrt{s_{x}^{2}}=\sqrt{\frac{\sum_{i=1}^{n}(x_i-\overline{x})^2}{n-1}}\)

    sqrt(sum((a-mean(a))^2)/(length(a)-1))
    ## [1] 1.414214
    sd(a)
    ## [1] 1.414214
    sqrt(sum((b-mean(b))^2)/(length(b)-1))
    ## [1] 7.238784
    sd(b)
    ## [1] 7.238784

    3.14 Príklad

    Vypočítajte rozptyl, smerodajnú odchýlku a variačný koeficient veku 92 študentov. Údaje sú uvedené v tabuľke. Predpokladajte, že týto študenti predstavujú základný súbor.

    Vek Počet
    18 4
    19 24
    20 42
    21 12
    22 4
    23 3
    24 3

    \(\overline{x}=\frac{\sum_{i=1}^{k}x_i n_i}{\sum_{i=1}^{k}n_i}\)

    vek<-18:24
    pocet<-c(4,24,42,12,4,3,3)
    priemer<-vazenyAritP(hodnoty = vek,vahy = pocet)
    print(priemer)
    ## [1] 20.09783
    sum(vek*pocet)/sum(pocet)
    ## [1] 20.09783

    vypíšte hodnoty z tabuľky a skontrolujte správnosť výpočtu váženého aritmetického priemeru

    rep(vek,pocet)
    ##  [1] 18 18 18 18 19 19 19 19 19 19 19 19 19 19 19 19 19 19 19 19 19 19 19
    ## [24] 19 19 19 19 19 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
    ## [47] 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
    ## [70] 20 21 21 21 21 21 21 21 21 21 21 21 21 22 22 22 22 23 23 23 24 24 24
    mean(rep(vek,pocet))
    ## [1] 20.09783

    \(s_{x}^{2}=\frac{\sum_{i=1}^{k}(x_i-\overline{x})^2\times n_i}{\sum_{i=1}^{k}n_i}\)

    rozptyl<-sum(pocet*(vek-priemer)^2)/sum(pocet)
    print(rozptyl)
    ## [1] 1.544778

    \(s_{x}=\sqrt{s_{x}^2} =\sqrt{\frac{\sum_{i=1}^{k}(x_i-\overline{x})^2\times n_i}{\sum_{i=1}^{k}n_i}}\)

    odchylka<-sqrt(rozptyl)
    print(odchylka)
    ## [1] 1.242891

    \(v_x=\frac{s_x}{\overline{x}}\)

    varKoef<-odchylka/priemer
    print(varKoef)
    ## [1] 0.06184206

    3.15 Príklad

    Vypočítajte priemerný plat a variačný koeficient platov všetkých pracovníkov firmy. Uvažujme o základnom súbore.

    Skupina Priemerný plat Počet pracovníkov Smerodajná odchýlka
    Muži 17 500 60 854
    Ženy 16 800 40 539

    vytvorte data frame z údajov v tabuľke

    platy<-data.frame("skupina" = c("M","F"), "plat" = c(17500,16800), "pocetPracovnikov" = c(60,40),"odchylka"=c(854,539))
    platy

    do vytvoreného data frame pridajte stĺpec s vypočítaným rozptylom

    platy$rozptyl<-platy$odchylka^2
    platy

    vypočítajte priemerný plat všetkých pracovníkov firmy

    \(\overline{x}=\frac{\sum_{i=1}^{k}x_i n_i}{\sum_{i=1}^{k}n_i}\)

    priemernyPlat<-vazenyAritP(hodnoty = platy$plat,vahy = platy$pocetPracovnikov)
    print(priemernyPlat)
    ## [1] 17220

    urobte rozklad rozptylu na vnútroskupinovú a medziskupinovú zložku

    \(s_x^2=\frac{\sum_{i=1}^{k}s_{ix}^{2}n_i}{\sum_{i=1}^{k}n_i}+\frac{\sum_{i=1}^{k}(x_i-\overline{x})^2n_i}{\sum_{i=1}^{k}n_i}\)

    vypočítajte čiastkové činitele čitateľa vnútroskupinovej zložky

    \(s_{ix}^{2}n_i\)

    platy$citatelVnutroskupinovaZlozka<-platy$rozptyl*platy$pocetPracovnikov
    platy

    vypočítajte čiastkové činitele čitateľa medziskupinovej zložky

    \((x_i-\overline{x})^2n_i\)

    platy$citatelMedziskupinovaZlozka<-(platy$plat-priemernyPlat)^2*platy$pocetPracovnikov
    platy

    vypočítajte vnútroskupinový rozptlyl

    \(\frac{\sum_{i=1}^{k}s_{ix}^{2}n_i}{\sum_{i=1}^{k}n_i}\)

    vnutroskupinovyRozptyl<-sum(platy$citatelVnutroskupinovaZlozka)/sum(platy$pocetPracovnikov)
    print(vnutroskupinovyRozptyl)
    ## [1] 553798

    vypočítajte medziskupinový rozptlyl

    \(\frac{\sum_{i=1}^{k}(x_i-\overline{x})^2n_i}{\sum_{i=1}^{k}n_i}\)

    medziskupinovyRozptyl<-sum(platy$citatelMedziskupinovaZlozka)/sum(platy$pocetPracovnikov)
    print(medziskupinovyRozptyl)
    ## [1] 117600

    vypočítajte celkový rozptyl

    \(s_x^2=\frac{\sum_{i=1}^{k}s_{ix}^{2}n_i}{\sum_{i=1}^{k}n_i}+\frac{\sum_{i=1}^{k}(x_i-\overline{x})^2n_i}{\sum_{i=1}^{k}n_i}\)

    celkovyRozptyl<-vnutroskupinovyRozptyl+medziskupinovyRozptyl
    print(celkovyRozptyl)
    ## [1] 671398

    vypočítajte smerodajnú odchýlku

    \(s_x=\sqrt{s_x^2}\)

    odchylka<-sqrt(celkovyRozptyl)
    print(odchylka)
    ## [1] 819.3888

    vypočítajte variačný koeficient platov vo firme

    \(v_x=\frac{s_x}{\overline{x}}\)

    varKoef<-odchylka/priemernyPlat
    print(varKoef)
    ## [1] 0.04758355

    3.16 Príklad

    Vo firme, ktorá sa skladá z troch pobočiek boli skúmané mesačné platy zamestnancov. Vypočítajte priemerný plat a variačný koeficientov za celú firmu.

    Pobočka Priemerný plat Podiel pracovníkov Variačný koeficient
    A 29 300 0,42 0,049
    B 27 500 0,27 0,041
    C 31 600 0,31 0,032

    \(s_x^2=\sum_{i=1}^{k}s_{ix}^{2}p_i+\sum_{i=1}^{k}(x_i-\overline{x})^2p_i\)

    priemernyPlat<-c(29300,27500,31600)
    podielPracovnikov<-c(0.42,0.27,0.31)
    variacnyKoeficient<-c(0.049,0.041,0.032)
    names(priemernyPlat)<-names(podielPracovnikov)<-names(variacnyKoeficient)<-c("A","B","C")
    print(priemernyPlat)
    ##     A     B     C 
    ## 29300 27500 31600
    print(podielPracovnikov)
    ##    A    B    C 
    ## 0.42 0.27 0.31
    print(variacnyKoeficient)
    ##     A     B     C 
    ## 0.049 0.041 0.032

    \(v_x=\frac{s_x}{\overline{x}} \Leftrightarrow s_x=v_x \times \overline{x}\)

    skupinovaOdchylka<-variacnyKoeficient*priemernyPlat
    names(skupinovaOdchylka)<-c("A","B","C")
    print(skupinovaOdchylka)
    ##      A      B      C 
    ## 1435.7 1127.5 1011.2
    skupinovyRozptyl<-skupinovaOdchylka^2
    print(skupinovyRozptyl)
    ##       A       B       C 
    ## 2061234 1271256 1022525

    \(\overline{x}=\sum_{i=1}^{k}\overline{x_i}p_i\)

    celkovyPriemer<-sum(priemernyPlat*podielPracovnikov)
    print(celkovyPriemer)
    ## [1] 29527

    \(s_x^2=\sum_{i=1}^{k}s_{ix}^{2}p_i\)

    vnutroskupinovyRozptyl<-sum(skupinovyRozptyl*podielPracovnikov)
    print(vnutroskupinovyRozptyl)
    ## [1] 1525941

    \(\sum_{i=1}^{k}(x_i-\overline{x})^2p_i\)

    medziskupinovyRozptyl<-sum((priemernyPlat-celkovyPriemer)^2*podielPracovnikov)
    print(medziskupinovyRozptyl)
    ## [1] 2463171
    celkovyRozptyl<-vnutroskupinovyRozptyl+medziskupinovyRozptyl
    print(celkovyRozptyl)
    ## [1] 3989112
    odchylka<-sqrt(celkovyRozptyl)
    print(odchylka)
    ## [1] 1997.276
    varKoef<-odchylka/celkovyPriemer
    print(varKoef)
    ## [1] 0.06764236

    4 Pravdepodobnosť a náhodná veličina

    4.1 Príklad

    Vysoká škola prijíma do prvého ročníka študentov zo všetkých typov stredných škôl. Absolventov gymnázia je 65 % pričom 60 % z nich tvoria dievčatá. Zvyšných 35 % študentov absolvovalo iný typ strednej školy a je medzi nimi iba 40 % dievčat.

    určte pravdepodobnosť, že náhodne vybraný študent prvého ročníka je dievča

    Označme si javy

    A - náhodne vybraný študent je dievča

    B1 - náhodne vybraný študent je absolvent gymnázia

    B2 - náhodne vybraný študent je absolvent iného typu strednej školy

    \(P(B1)=0,65\)

    \(P(B2)=0,35\)

    \(P(A/B1)=0,6\)

    \(P(A/B2)=0,4\)

    \(P(A)=\sum_{i=1}^{n}P(B_i)\times P(A/B_i)\)

    A<-0.65*0.6+0.35*0.4
    print(A)
    ## [1] 0.53

    určte pravdepodobnosť, že náhodne vybrané dievča študovalo na gymnáziu

    \(P(A/B)=\frac{P(B/A)\times P(A)}{P(B)}\)

    v súlade s našim značením \(P(B1/A)=\frac{P(A/B1)\times P(B1)}{P(A)}\)

    0.6*0.65/A
    ## [1] 0.7358491

    4.2 Príklad

    Pravdepodobnosť, že sa narodí chlapec je 0,515. Uvažujme 7 po sebe narodených detí.

    určte pravdepodobnosť, že sa narodí dievča

    \(P(\overline{A})=1-P(A)\)

    pravdepodobnostCH<-0.515
    pravdepodobnostD<-1-pravdepodobnostCH
    print(pravdepodobnostD)
    ## [1] 0.485

    určte pravdepodobnosť, že medzi 7 po sebe narodenými deťmi budú prvé 3 dievčatá a zvyšok chlapci

    pravdepodobnostD*pravdepodobnostD*pravdepodobnostD*pravdepodobnostCH*pravdepodobnostCH*pravdepodobnostCH*pravdepodobnostCH
    ## [1] 0.008025168
    pravdepodobnostD^3*pravdepodobnostCH^4
    ## [1] 0.008025168

    určte pravdepodobnosť, že medzi 7 po sebe narodenými deťmi budú prví 4 chlapci a zvyšok dievčatá

    pravdepodobnostCH*pravdepodobnostCH*pravdepodobnostCH*pravdepodobnostCH*pravdepodobnostD*pravdepodobnostD*pravdepodobnostD
    ## [1] 0.008025168
    pravdepodobnostCH^4*pravdepodobnostD^3
    ## [1] 0.008025168

    určte pravdepodobnosť, že medzi 7 po sebe narodenými deťmi budú práve 3 dievčatá

    \(P(x)=\binom{n}{x} \pi^x (1-\pi)^{n-x}\)

    pi<-pravdepodobnostD
    x<-3
    n<-7
    print(choose(n,x)*pi^x*(1-pi)^(n-x))
    ## [1] 0.2808809
    dbinom(size=n,x=x,prob=pi)
    ## [1] 0.2808809

    vytvorte pravdepodobnostnú tabuľku pre počet narodených dievčat zo 7 po sebe narodených detí

    tabulkaD<-cbind(0:n,dbinom(size=n,x=0:n,prob=pi))
    colnames(tabulkaD)<-c("pocetDievcat","pravdepodobnost")
    print(tabulkaD)
    ##      pocetDievcat pravdepodobnost
    ## [1,]            0     0.009608390
    ## [2,]            1     0.063340743
    ## [3,]            2     0.178952973
    ## [4,]            3     0.280880879
    ## [5,]            4     0.264518887
    ## [6,]            5     0.149466012
    ## [7,]            6     0.046919751
    ## [8,]            7     0.006312366

    vytvorte pravdepodobnostnú tabuľku pre počet narodených chlapcov zo 7 po sebe narodených detí

    tabulkaCH<-cbind(0:n,dbinom(size=n,x=0:n,prob=pravdepodobnostCH))
    colnames(tabulkaCH)<-c("pocetChlapcov","pravdepodobnost")
    print(tabulkaCH)
    ##      pocetChlapcov pravdepodobnost
    ## [1,]             0     0.006312366
    ## [2,]             1     0.046919751
    ## [3,]             2     0.149466012
    ## [4,]             3     0.264518887
    ## [5,]             4     0.280880879
    ## [6,]             5     0.178952973
    ## [7,]             6     0.063340743
    ## [8,]             7     0.009608390

    určte pravdepodobnosť, že medzi 7 po sebe narodenými deťmi bude aspoň 5 chlapcov

    \(P(x\geq 5)=P(5)+P(6)+P(7)\)

    dbinom(size=7,x=c(5,6,7),prob=pravdepodobnostCH)
    ## [1] 0.17895297 0.06334074 0.00960839
    sum(dbinom(size=7,x=c(5,6,7),prob=pravdepodobnostCH))
    ## [1] 0.2519021

    určte pravdepodobnosť, že medzi 7 narodenými deťmi bude najviac 6 dievčat

    \(P(x\leq 6)=P(0)+P(1)+P(2)+\cdots+ P(5)+P(6)= 1 - P(7)\)

    sum(dbinom(size=7,x=c(0:6),prob=pravdepodobnostD))
    ## [1] 0.9936876
    1-dbinom(size=7,x=7,prob=pravdepodobnostD)
    ## [1] 0.9936876

    určte pravdepodobnosť, že medzi 7 narodenými deťmi bude aspoň 1 chlapec (najviac 6 dievčat zo siedmych detí je rovnaký jav ako aspoň 1 chlapec zo siedmych detí)

    sum(dbinom(size=7,x=c(1:7),prob=pravdepodobnostCH))
    ## [1] 0.9936876
    1-dbinom(size=7,x=0,prob=pravdepodobnostCH)
    ## [1] 0.9936876

    vypočítajte strednú hodnotu a rozptyl počtu narodených dievčat zo siedmych detí

    \(E(X)=n\times\pi\)

    \(D(X)=n\times\pi\times(1-\pi)\)

    EXD<-7*pravdepodobnostD
    print(EXD)
    ## [1] 3.395
    DXD<-7*pravdepodobnostD*(1-pravdepodobnostD)
    print(DXD)
    ## [1] 1.748425

    vypočítajte strednú hodnotu a rozptyl počtu narodených chlapcov zo siedmych detí

    EXCH<-7*pravdepodobnostCH
    print(EXCH)
    ## [1] 3.605
    DXCH<-7*pravdepodobnostCH*(1-pravdepodobnostCH)
    print(DXCH)
    ## [1] 1.748425

    4.3 Príklad

    Pravdepodobnosť, že sa podarí spojiť telefónny hovor na prvý pokus je 0,25. Uvažujme 10 nezávislých pokusov.

    určte pravdepodobnosť, že z týchto 10 nezávislých pokusov budú práve 4 úspešné

    pravdepodobnostUspechu<-0.25
    pravdepodobnostNeuspechu<-1-pravdepodobnostUspechu
    dbinom(x=4,size=10,prob=pravdepodobnostUspechu)
    ## [1] 0.145998

    vytvorte pravdepodobnostnú tabuľku pre počet úspešne spojených hovorov z 10 nezávislých pokusov

    tabulkaUspech<-cbind(0:10,dbinom(size=10,x=0:10,prob=pravdepodobnostUspechu))
    colnames(tabulkaUspech)<-c("pocetSpojenychHovorov","pravdepodobnost")
    print(tabulkaUspech)
    ##       pocetSpojenychHovorov pravdepodobnost
    ##  [1,]                     0    5.631351e-02
    ##  [2,]                     1    1.877117e-01
    ##  [3,]                     2    2.815676e-01
    ##  [4,]                     3    2.502823e-01
    ##  [5,]                     4    1.459980e-01
    ##  [6,]                     5    5.839920e-02
    ##  [7,]                     6    1.622200e-02
    ##  [8,]                     7    3.089905e-03
    ##  [9,]                     8    3.862381e-04
    ## [10,]                     9    2.861023e-05
    ## [11,]                    10    9.536743e-07

    určte pravdepodobnosť, že z týchto 10 nezávislých pokusov sa podarí spojiť aspoň 2 hovory

    sum(dbinom(size=10,x=2:10,prob=pravdepodobnostUspechu))
    ## [1] 0.7559748
    1-sum(dbinom(size=10,x=0:1,prob=pravdepodobnostUspechu))
    ## [1] 0.7559748

    vypočítajte strednú hodnotu a rozptyl počtu úspešne spojených hovorov

    \(E(X)=n\times\pi\)

    \(D(X)=n\times\pi\times(1-\pi)\)

    EX<-10*pravdepodobnostUspechu
    print(EX)
    ## [1] 2.5
    DX<-10*pravdepodobnostUspechu*(1-pravdepodobnostUspechu)
    print(DX)
    ## [1] 1.875

    4.4 Príklad

    Finančný úrad v danom okrese kontroluje 250 firiem. Z týchto firiem má daňové priznanie v poriadku iba 200 firiem a ostatné firmy ho majú chybne vyplnené. Aká je pravdepodobnosť, že úradník, ktorý náhodne vyberie 3 firmy a skontroluje ich nájde chybu?

    Označme P(X) náhodnú veličinu, ktorá predstavuje počet chybne vyplnených daňových priznaní pri výbere 3 firiem pri znalosti, že z 250 má daňové priznanie v poriadku 200 z nich. Táto náhodná veličina sa riadni hypergemetrickým rozdelením pravdepodobnosti. Pravdepodobnosť, že nájde chybu znamená, že nájde buď jednu, dve alebo tri chyby. Táto pravdepodobnosť je rovná 1 - pravdepodobnosti, že nenájde chybu:

    \(1-P(0)\)

    Pravdepodobnosť, že x z n kontrolovaných firiem je dobrých(chybných), pričom vieme, že všetkých firiem je N a dobrých(chybných) je M by sme vypočítali nasledovne:

    \(P(x)=\frac{\binom{M}{x}\binom{N-M}{n-x}}{\binom{N}{n}}\)

    \(1-P(0)=1-\frac{\binom{50}{0}\binom{200}{3}}{\binom{250}{3}}\)

    1-(choose(50,0)*choose(200,3))/choose(250,3)
    ## [1] 0.4895453
    1-dhyper(k=3,m=200,n=50,x=3)
    ## [1] 0.4895453

    program R používa iné značenie:

    k - koľko vyberám

    m - počet dobrých (zlých) celkom

    n - počet zlých (dobrých) celkom

    m+n - celkový počet

    x - počet dobrých (zlých), ktoré chcem vybrať - viaže sa na m

    \(P(x)=\frac{\binom{m}{x}\binom{n}{k-x}}{\binom{m+n}{k}}\)

    vytvorte pravdepodobnostnú tabuľku počtu chybne vyplnených daňových priznaní ak vyberáme 3

    tabulkaDP<-cbind(0:3,dhyper(k=3,m=50,n=200,x=0:3))
    colnames(tabulkaDP)<-c("pocetChybneVypisanychDP","pravdepodobnost")
    print(tabulkaDP)
    ##      pocetChybneVypisanychDP pravdepodobnost
    ## [1,]                       0     0.510454722
    ## [2,]                       1     0.386708123
    ## [3,]                       2     0.095219588
    ## [4,]                       3     0.007617567

    vypočítajte strednú hodnotu a rozptyl počtu chybne vyplnených daňových priznaní

    \(E(X)=n\frac{M}{N}\)

    \(D(X)=n\frac{M}{N}\left (1-\frac{M}{N} \right ) \frac{N-n}{N-1}\)

    n<-3
    M<-50
    N<-250
    EX<-n*(M/N)
    print(EX)
    ## [1] 0.6
    DX<-n*(M/N)*(1-M/N)*((N-n)/(N-1))
    print(DX)
    ## [1] 0.4761446

    vypočítajte strednú hodnotu a rozptyl počtu dobre vyplnených daňových priznaní

    n<-3
    M<-200
    N<-250
    EX<-n*(M/N)
    print(EX)
    ## [1] 2.4
    DX<-n*(M/N)*(1-M/N)*((N-n)/(N-1))
    print(DX)
    ## [1] 0.4761446

    4.5 Príklad

    V dodávke 30 výrobkov je 12 poškodených. Vyberáme náhodne 5 výrobkov výberom bez vracania.

    určte pravdepodobnosť, že vo výbere budú práve 3 výrobky s vadou

    dhyper(k=5,m=12,n=18,x=3)
    ## [1] 0.2362006

    určte pravdepodobnosť, že vo výbere bude najviac jeden výrobok s vadou

    sum(dhyper(k=5,m=12,n=18,x=0:1))
    ## [1] 0.3177971

    určte pravdepodobnosť, že vo výbere budú aspoň 4 výrobky dobré (rovnaký jav ako predchádzajúci)

    sum(dhyper(k=5,m=18,n=12,x=4:5))
    ## [1] 0.3177971

    vytvorte pravdepodobnostnú tabuľku počtu poškodených výrobkov

    tabulkaPoskodenych<-cbind(0:5,dhyper(k=5,m=12,n=18,x=0:5))
    colnames(tabulkaPoskodenych)<-c("pocetPoskodenychVyrobkov","pravdepodobnost")
    print(tabulkaPoskodenych)
    ##      pocetPoskodenychVyrobkov pravdepodobnost
    ## [1,]                        0     0.060123784
    ## [2,]                        1     0.257673361
    ## [3,]                        2     0.377920930
    ## [4,]                        3     0.236200581
    ## [5,]                        4     0.062523683
    ## [6,]                        5     0.005557661

    vytvorte pravdepodobnostnú tabuľku počtu dobrých výrobkov

    tabulkaDobrych<-cbind(0:5,dhyper(k=5,m=18,n=12,x=0:5))
    colnames(tabulkaDobrych)<-c("pocetDobrychVyrobkov","pravdepodobnost")
    print(tabulkaDobrych)
    ##      pocetDobrychVyrobkov pravdepodobnost
    ## [1,]                    0     0.005557661
    ## [2,]                    1     0.062523683
    ## [3,]                    2     0.236200581
    ## [4,]                    3     0.377920930
    ## [5,]                    4     0.257673361
    ## [6,]                    5     0.060123784

    vypočítajte strednú hodnotu a rozptyl počtu poškodených výrobkov

    \(E(X)=n\frac{M}{N}\)

    \(D(X)=n\frac{M}{N}\left (1-\frac{M}{N} \right ) \frac{N-n}{N-1}\)

    n<-5
    M<-12
    N<-30
    EX<-n*(M/N)
    print(EX)
    ## [1] 2
    DX<-n*(M/N)*(1-M/N)*((N-n)/(N-1))
    print(DX)
    ## [1] 1.034483

    vypočítajte strednú hodnotu a rozptyl počtu dobrých výrobkov

    n<-5
    M<-18
    N<-30
    EX<-n*(M/N)
    print(EX)
    ## [1] 3
    DX<-n*(M/N)*(1-M/N)*((N-n)/(N-1))
    print(DX)
    ## [1] 1.034483

    4.6 Príklad

    Predajňu navštívi v priemere 20 zákazníkov za hodinu. Čomu je rovná pravdepodobnosť, že v priebehu 6 minút nenavštívi predajňu ani jeden zákazník.

    Pravdepodobnosť na nejakom časovom intervale je typický príklad pre Poissonovo rozdelenie pravdepodobnosti. Toto rozdelenie má iba jeden parameter λ. Ten je pre hodinu (60 minút) rovný 20. Pre 6 minútový časový interval je potrebné tento parameter dopočítať:

    lambda60minut<-20
    lambda6minut<-lambda60minut/10
    print(lambda6minut)
    ## [1] 2

    \(P(x)=\frac{\lambda^x}{x!}e^{-\lambda}\)

    určte čomu je rovná pravdepodobnosť, že v priebehu 6 minút nenavštívi predajňu ani jeden zákazník

    x<-0
    lambda<-lambda6minut
    (lambda^x)/factorial(x)*exp(-lambda)
    ## [1] 0.1353353
    dpois(x=0,lambda=lambda6minut)
    ## [1] 0.1353353

    určte čomu je rovná pravdepodobnosť, že v priebehu 6 minút navštívi predajňu viac ako 5 zákazníkov

    viacAko5<-1-sum(dpois(x=0:5,lambda=lambda6minut))
    print(viacAko5)
    ## [1] 0.01656361

    vytvorte pravdepodobnostnú tabuľku počtu zákazníkov, ktorí navštívia predajňu v priebehu 6 minút

    tabulka<-c(dpois(x=0:5,lambda=lambda6minut),viacAko5)
    names(tabulka)<-c("0","1","2","3","4","5","viacAko5")
    print(tabulka)
    ##          0          1          2          3          4          5 
    ## 0.13533528 0.27067057 0.27067057 0.18044704 0.09022352 0.03608941 
    ##   viacAko5 
    ## 0.01656361

    vypočítajte strednú hodnotu a rozptyl počtu zákazníkov, ktorí navštívia predajňu v priebehu 6 minút

    \(E(X)=D(X)=\lambda\)

    print(lambda6minut)
    ## [1] 2

    vypočítajte strednú hodnotu a rozptyl počtu zákazníkov, ktorí navštívia predajňu v priebehu 60 minút

    print(lambda60minut)
    ## [1] 20

    4.7 Príklad

    V objekte goly sú uvedené počty gólov v 50 náhodne vybraných futbalových zápasoch. Predpokladáme, že počet strelených gólov sa riadi Poissonovým rozdelením pravdepodobnosti.

    goly<-c(0,0,0,0,0,0,0,0,1,1,1,1,1,1,2,2,2,2,2,2,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,4,4,4,4,4,4,5,5,6,7,9,11)

    vypočítajte parameter λ

    lambda<-mean(goly)
    print(lambda)
    ## [1] 2.78

    vypočítajte strednú hodnotu a rozptyl počtu počtu gólov vo futbalových zápasoch

    \(E(X)=D(X)=\lambda\)

    print(lambda)
    ## [1] 2.78

    určte pravdepodobnosť, že v náhodne vybranom futbalovom zápase padnú presne 2 góly

    dpois(x=2,lambda=lambda)
    ## [1] 0.2397292

    určte pravdepodobnosť, že v náhodne vybranom futbalovom zápase padnú viac ako 3 góly

    1-sum(dpois(x=0:3,lambda=lambda))
    ## [1] 0.3036162

    4.8 Príklad

    V súbore suciastka.csv sú uvedené dĺžky náhodne vybraných 100 súčiastok v mm. Predpokladajme, že dĺžka súčiastky je náhodná veličina, ktorá má normálne rozdelenie pravdepodobnosti.

    načítajte hodnoty do programu R

    suciastka<-read.csv2("suciastka.csv")
    head(suciastka)

    odhadnite strednú hodnotu a smerodajnú odchýlku dĺžky súčiastky

    strednaHodnota<-mean(suciastka$dlzka)
    odchylka<-sd(suciastka$dlzka)
    print(strednaHodnota)
    ## [1] 150.5123
    print(odchylka)
    ## [1] 5.148578

    vykreslite histogram rozdelenia dĺžky súčiastky

    hist(suciastka$dlzka,xlab = "dĺžka súčiastky v mm",ylab = "absolútna početnosť",main = "Histogram rozdelenia dĺžky súčiastky")

    overte normalitu rozdelenia graficky prostredníctvom kvantilového grafu

    qqnorm(suciastka$dlzka,main="Kvantilový graf hodnôt dĺžky súčiastky")
    qqline(suciastka$dlzka)

    určte pravdepodobnosť, že náhodne vybraná súčiastka bude mať dĺžku väčšiu ako 152 mm

    \(P(X\leq x)=F(x)\)

    \(P(X>152)=1-P(X\leq 152)=1-F(152)\)

    1-pnorm(q=152,mean=strednaHodnota,sd=odchylka)
    ## [1] 0.3863085

    \(F(x)=\phi \left ( \frac{x-\mu }{\sigma } \right )\)

    1-pnorm((152-strednaHodnota)/odchylka)
    ## [1] 0.3863085

    určte pravdepodobnosť, že náhodne vybraná súčiastka bude mať dĺžku menšiu ako 153 mm

    \(P(X<153)=P(X\leq 153)=F(153)\)

    pnorm(q=153,mean=strednaHodnota,sd=odchylka)
    ## [1] 0.6855167

    určte pravdepodobnosť, že náhodne vybraná súčiastka bude mať dĺžku 148 až 155 mm

    \(P(x_1<X\leq x_2)=F(x_2)-F(x_1)\)

    pnorm(q=155,mean=strednaHodnota,sd=odchylka)-pnorm(q=148,mean=strednaHodnota,sd=odchylka)
    ## [1] 0.4955081

    určte akú dĺžku nepresiahne 75 % súčiastok

    qnorm(p=0.75,mean=strednaHodnota,sd=odchylka)
    ## [1] 153.985

    \(x_p=\mu +\sigma \times u_p\)

    strednaHodnota+odchylka*qnorm(0.75)
    ## [1] 153.985

    4.9 Príklad

    Životnosť automobilovej batérie (v dňoch) je náhodná veličina s normálnym rozdelením N(1 248;34 225). Výrobca poskytuje záručnú dobu 36 mesiacov.

    strednaHodnota<-1248
    odchylka<-sqrt(34225)

    určte akú záručnú dobu v dňoch uvádza výrobca

    print(paste("Výrobca uvádza záručnú dobu 36 mesiacov, čo predstavuje",36*30,"dní"))
    ## [1] "Výrobca uvádza záručnú dobu 36 mesiacov, čo predstavuje 1080 dní"

    určte, u akého percenta batérií môžeme očakávať životnosť kratšiu ako uvádza výrobca

    pnorm(q=36*30,mean=strednaHodnota,sd=odchylka)
    ## [1] 0.1819106

    určte akú dobu životnosti prekročí 60 % batérií

    qnorm(p=0.6,mean=strednaHodnota,sd=odchylka)
    ## [1] 1294.869

    4.10 Príklad

    Z dlhodobých zisťovaní vieme, že IQ u detí je normálne rozdelená náhodná veličina so strednou hodnotou 100 a odchýlkou 15.

    určte pravdepodobnosť, že náhodne vybrané dieťa bude mať IQ v intervale od 90 po 110

    strednaHodnota<-100 
    odchylka<-15
    dolnaHranica<-90
    hornaHranica<-110
    pnorm(q=hornaHranica,mean=strednaHodnota,sd=odchylka)-pnorm(q=dolnaHranica,mean=strednaHodnota,sd=odchylka)
    ## [1] 0.4950149

    výsledok zobrazte graficky

    x <- seq(-4,4,length=100)*odchylka + strednaHodnota
    hx <- dnorm(x,strednaHodnota,odchylka)
    
    plot(x, hx, type="n", xlab="hodnota IQ", ylab="",
         main="Normálne rozdelenie IQ u detí", axes=FALSE)
    
    i <- x >= dolnaHranica & x <= hornaHranica
    lines(x, hx)
    polygon(c(dolnaHranica,x[i],hornaHranica), c(0,hx[i],0), col="grey") 
    
    area <- pnorm(hornaHranica, strednaHodnota, odchylka) - pnorm(dolnaHranica, strednaHodnota, odchylka)
    result <- paste("P(",dolnaHranica,"< IQ <",hornaHranica,") =",
                    signif(area, digits=3))
    mtext(result,3)
    axis(1, at=seq(40, 160, 20), pos=0)

    4.11 Príklad

    Nájdite kvantily vybraných pravdepodobnostných rozdelení.

    \(u_{0,5}\)

    qnorm(0.5)
    ## [1] 0

    \(u_{0,95}\)

    qnorm(0.95)
    ## [1] 1.644854

    \(u_{0,05}\)

    qnorm(0.05)
    ## [1] -1.644854

    \(P<0,5 \rightarrow u_P=-u_{1-P}\)

    -qnorm(1-0.05)
    ## [1] -1.644854

    \(\chi^{2}_{0,05}(10)\)

    qchisq(p=0.05,df=10)
    ## [1] 3.940299

    \(\chi^{2}_{0,975}(3)\)

    qchisq(p=0.975,df=3)
    ## [1] 9.348404

    \(t_{0,05}(10)\)

    qt(p=0.05,df=10)
    ## [1] -1.812461

    \(t_{0,975}(1)\)

    qt(p=0.975,df=1)
    ## [1] 12.7062

    \(t_{0,975}(5)\)

    qt(p=0.975,df=5)
    ## [1] 2.570582

    \(t_{0,975}(10)\)

    qt(p=0.975,df=10)
    ## [1] 2.228139

    \(t_{0,975}(100)\)

    qt(p=0.975,df=100)
    ## [1] 1.983972

    \(u_{0,975}\)

    qnorm(p=0.975)
    ## [1] 1.959964
    x <- seq(-4, 4, length=100)
    hx <- dnorm(x)
    
    stupneVolnosti <- c(1, 5, 10, 100)
    farby <- c("red", "blue", "darkgreen", "gold", "black")
    legenda <- c("df=1", "df=5", "df=10", "df=100", "normované \nnormálne")
    
    plot(x, hx, type="l", lty=2, xlab="",
      ylab="Hustota pravdepodobnosti", main="Porovanie Studentovho t rozdelenia podľa stupňov voľnosti (df)")
    
    for (i in 1:4){
      lines(x, dt(x,stupneVolnosti[i]), lwd=2, col=farby[i])
    }
    
    legend("topright", inset=.05, title="Rozdelenia",
      legenda, lwd=2, lty=c(1, 1, 1, 1, 2), col=farby)

    \(F_{0,95}(1,5)\)

    qf(0.95,df1=1,df2=5)
    ## [1] 6.607891

    \(F_{0,95}(5,1)\)

    qf(0.95,df1=5,df2=1)
    ## [1] 230.1619

    \(F_{0,05}(10,20)\)

    qf(0.05,df1=10,df2=20)
    ## [1] 0.3604881

    \(P<0,5 \rightarrow F_P\left ( \nu_1,\nu_2 \right )=\frac{1}{F_{1-P}\left ( \nu_2,\nu_1 \right )}\)

    1/qf(1-0.05,df1=20,df2=10)
    ## [1] 0.3604881

    5 Teória odhadov a testovanie hypotéz

    5.1 Príklad

    Na základe 50 náhodne vybraných novovyrobených automobilov bolo zistené, že priemerná spotreba je 5,3 \(l\), rozptyl spotreby je 0,04 \(l^2\). Predpokladajme, že spotreba automobilu má normálne rozdelenie s rozptylom 0,09 \(l^2\). Stanovte, v akých medziach môžete očakávať priemernú spotrebu automobilov s 90 % a 95 % spolehlivosťou. Diskutujte, ako se změní tento interval, keď by tento výber bol zo 100 náhodne vybraných novovyrobených automobilov. Diskutujte tiež o jednostranných intervaloch.

    normálne rozdelenie so známym rozptylom, 95 % spoľahlivosť

    alfa<-0.05
    n<-50
    priemer<-5.3
    vybOdchylka<-0.2 
    odchylka<-0.3 
    
    delta<-qnorm(1-alfa/2)*odchylka/sqrt(n)
    
    dolnaHranica<-priemer-delta
    hornaHranica<-priemer+delta
    
    print(dolnaHranica)
    ## [1] 5.216846
    print(hornaHranica)
    ## [1] 5.383154

    So spoľahlivosťou 95 % môžeme očakávať priemernú spotrebu nového automobilu v intervale od 5.2168458 do 5.3831542.

    normálne rozdelenie so známym rozptylom, 90 % spoľahlivosť

    alfa<-0.1
    n<-50
    priemer<-5.3
    vybOdchylka<-0.2 
    odchylka<-0.3 
    
    delta<-qnorm(1-alfa/2)*odchylka/sqrt(n)
    
    dolnaHranica<-priemer-delta
    hornaHranica<-priemer+delta
    
    print(dolnaHranica)
    ## [1] 5.230215
    print(hornaHranica)
    ## [1] 5.369785

    So spoľahlivosťou 90 % môžeme očakávať priemernú spotrebu nového automobilu v intervale od 5.2302148 do 5.3697852. Presnosť je daná šírkou intervalu spoľahlivosti. Čím širší interval, tým menšia presnosť. Na základe porovnania predchádzajúcich výsledkov vidíme, že s rastom spoľahlivosti klesá presnosť odhadu a naopak.