Adrià Vilanova Martínez | 6baabbf | 2021-06-18 14:33:05 +0200 | [diff] [blame] | 1 | --- |
| 2 | title: "Entregable 2 - Estadística" |
| 3 | subtitle: "Grau de Matemàtiques, Curs 2020-21" |
| 4 | author: "Vilanova Martínez, Adrià" |
| 5 | output: html_document |
| 6 | --- |
| 7 | |
| 8 | ```{r message=FALSE} |
| 9 | # Libraries |
| 10 | library(EnvStats) |
| 11 | ``` |
| 12 | |
| 13 | ## Configuració |
| 14 | Aquí es pot configurar la pràctica depenent del que es pregunti: |
| 15 | |
| 16 | ```{r} |
| 17 | # Si |generate_random| és TRUE, en comptes d'utilitzar la mostra donada a la |
| 18 | # variable |input|, es genera una mostra aleatòria seguint la distribució |
| 19 | # binomial negativa de mida |random_n|, amb paràmetres |random_size| i |
| 20 | # |random_prob| |
| 21 | generate_random = FALSE |
| 22 | |
| 23 | # Dades de la mostra (s'usen si |generate_random| és FALSE) |
| 24 | input = data.frame( |
| 25 | value = seq(0, 29), |
| 26 | freq = c(0, 0, 2, 5, 11, 34, 68, 77, 139, 152, 192, 211, 190, 170, 170, 155, 109, 98, 69, 59, 31, 23, 20, 6, 3, 1, 1, 2, 2, 0) # Adri |
| 27 | #freq = c(4, 26, 60, 85, 155, 177, 186, 197, 213, 202, 148, 123, 116, 74, 58, 55, 40, 31, 11, 11, 5, 11, 2, 6, 2, 1, 1, 0, 0, 0) # Pedro |
| 28 | #freq = c(0, 5, 20, 31, 71, 97, 143, 155, 202, 174, 193, 167, 166, 141, 115, 84, 59, 54, 37, 28, 20, 15, 8, 6, 5, 1, 2, 0, 0, 1) # Paula |
| 29 | ) |
| 30 | |
| 31 | # Paràmetres de la mostra aleatòria (s'usen si |generate_random| és TRUE) |
| 32 | random_size = 10 |
| 33 | random_prob = 0.3 |
| 34 | random_n = 2000 |
| 35 | |
| 36 | # == Adri == |
| 37 | # Probabilitat de la regió de predicció de la pregunta 11: |
| 38 | prob_11 = 0.99 |
| 39 | |
| 40 | # Paràmetres a, b i r de l'apartat c: |
| 41 | a_c = -0.3 |
| 42 | b_c = -0.5 |
| 43 | r_c = 43 |
| 44 | |
| 45 | # == Pedro == |
| 46 | # Probabilitat de la regió de predicció de la pregunta 11: |
| 47 | #prob_11 = 0.95 |
| 48 | |
| 49 | # Paràmetres a, b i r de l'apartat c: |
| 50 | #a_c = 0.3 |
| 51 | #b_c = 2 |
| 52 | #r_c = 7 |
| 53 | |
| 54 | # == Paula == |
| 55 | # Probabilitat de la regió de predicció de la pregunta 11: |
| 56 | #prob_11 = 0.9 |
| 57 | |
| 58 | # Paràmetres a, b i r de l'apartat c: |
| 59 | #a_c = 0.2 |
| 60 | #b_c = 0.8 |
| 61 | #r_c = 15 |
| 62 | ``` |
| 63 | |
| 64 | ```{r} |
| 65 | if (generate_random == FALSE) { |
| 66 | dd = data.frame( |
| 67 | v = rep(input$value, input$freq) |
| 68 | ) |
| 69 | } else { |
| 70 | dd = data.frame( |
| 71 | v = rnbinom(random_n, size=random_size, prob=random_prob) |
| 72 | ) |
| 73 | } |
| 74 | ``` |
| 75 | |
| 76 | Comprovació (el valor hauria de ser igual al del full de l'entregable): <ch>$\sum_{i=1}^{29} X^2 = `r format(sum(dd$v^2), scientific = FALSE)`$</ch> |
| 77 | |
| 78 | ## Apartat a) |
| 79 | **Estimeu pel mètode dels moments els paràmetres $p$ i $r$, utilitzant els dos primers moments. Per veure si l'estimació ajusta bé, dibuixeu i compareu la funció de distribució estimada $f_{mm}(x)$ amb l'empírica $F_{fr}(x)$ i contesteu les preguntes següents:** |
| 80 | |
| 81 | Els moments teòrics són: |
| 82 | |
| 83 | $$\begin{cases} |
| 84 | \mu_1 = \mathbb{E}[X] = \frac{r(1 - p)}{p} \\ |
| 85 | \mu_2 = \mathbb{E}[X^2] = \mathbb{E}[X]^2 + Var(X) = \left( \frac{r(1 - p)}{p} \right)^2 + \frac{r(1 - p)}{p^2} |
| 86 | \end{cases}$$ |
| 87 | |
| 88 | Pel mètode dels moments, igualem els moments mostrals i teòrics: |
| 89 | |
| 90 | $$\begin{cases} |
| 91 | \hat{\mu}_1 = \frac{r(1 - p)}{p} \\ |
| 92 | \hat{\mu}_2 = \left( \frac{r(1 - p)}{p} \right)^2 + \frac{r(1 - p)}{p^2} = \hat{\mu}_1^2 + \frac{\hat{\mu}_1}{p} |
| 93 | \end{cases}$$ |
| 94 | |
| 95 | De la segona equació podem aïllar $p$ i trobem: |
| 96 | |
| 97 | $$\hat{p}_{mm} = \frac{\hat{\mu}_1^2}{\hat{\mu}_2 - \hat{\mu}_1^2}$$ |
| 98 | |
| 99 | Després substituim aquest resultat a la primera equació, i aïllant $r$ trobem que: |
| 100 | |
| 101 | $$\hat{r}_{mm} = \frac{\hat{\mu}_1^2}{\hat{\mu}_2 - \hat{\mu}_1^2 - \hat{\mu}_1}$$ |
| 102 | |
| 103 | ### Pregunta 1 |
| 104 | El valor estimat de $p$ és: |
| 105 | |
| 106 | ```{r} |
| 107 | mu1 = mean(dd$v) |
| 108 | #mu2 = mean(dd$v)^2 + var(dd$v) # WRONG |
| 109 | mu2 = sum(dd$v^2)/length(dd$v) |
| 110 | pmm = mu1/(mu2 - mu1^2) |
| 111 | pmm |
| 112 | ``` |
| 113 | |
| 114 | ### Pregunta 2 |
| 115 | El valor estimat de $r$ és: |
| 116 | |
| 117 | ```{r} |
| 118 | rmm = mu1^2/(mu2 - mu1^2 - mu1) |
| 119 | rmm |
| 120 | ``` |
| 121 | |
| 122 | ### Pregunta 3 |
| 123 | El valor estimat de $\mathbb{E}[X]$ és: |
| 124 | ```{r} |
| 125 | mu1 |
| 126 | ``` |
| 127 | |
| 128 | ### Pregunta 4 |
| 129 | El valor estimat de $Var(X)$ és: |
| 130 | ```{r} |
| 131 | # Although we could also calculate varx as |mu2 - mu1^2|, it is much cleaner to |
| 132 | # do it this way |
| 133 | #varx = var(dd$v) # WRONG |
| 134 | #varx |
| 135 | mu2 - mu1^2 |
| 136 | ``` |
| 137 | |
| 138 | ### Pregunta 5 |
| 139 | El valor de $\max(|F_{mm}(x) - F_{fr}(x)|)$ és: |
| 140 | |
| 141 | ```{r} |
| 142 | pemp_x = function(x) { |
| 143 | return(pemp(x, dd$v, discrete=TRUE)) |
| 144 | } |
| 145 | |
| 146 | pnbinom_a = function(x) { |
| 147 | return(pnbinom(x, size=rmm, prob=pmm)) |
| 148 | } |
| 149 | |
| 150 | graph_max = max(dd$v) + 5 |
| 151 | |
| 152 | curve(pemp_x, col="red", from=0, to=graph_max, n=3333) |
| 153 | curve(pnbinom_a, col="blue", from=0, to=graph_max, n=3333, add=T) |
| 154 | legend(1, 1, legend=c("pemp(x)", "pnbinom_mm(x)"), col=c("red", "blue"), lty=c(1, 1)) |
| 155 | ``` |
| 156 | |
| 157 | ```{r} |
| 158 | curve(abs(pemp_x(x) - pnbinom_a(x)), from=0, to=graph_max, ylab="abs(pemp(x) - pnbinom_mm(x))", n=3333) |
| 159 | xeq = seq(-1, graph_max, 0.5) |
| 160 | max(abs(pemp_x(xeq) - pnbinom_a(xeq))) |
| 161 | ``` |
| 162 | |
| 163 | ## Apartat b) |
| 164 | **Estimeu pel mètode de la màxima versemblança els paràmetres $p$ i $r$. Per veure si l'estimació s'ajusta bé, dibuixeu i compareu la funció de distribució estimada $F_mm(x)$ amb l'empírica $F_{fr}(x)$ i contesteu les preguntes següents:** |
| 165 | |
| 166 | La funció de probabilitat de la distribució binomial negativa és: |
| 167 | |
| 168 | $$P(X = x) = \binom{r + x - 1}{x} p^r (1 - p)^x$$ |
| 169 | |
| 170 | Per tant, la funció de versemblança és: |
| 171 | |
| 172 | $$L(p, r) \equiv L(p, r | \underset{\sim}{X}) = \prod_{i=1}^n \frac{\Gamma(r + x_i)}{\Gamma(r) \, x_i!} p^r (1 - p)^{x_i}$$ |
| 173 | |
| 174 | L'estimador de màxima versemblança és el que maximitza $L(p, r)$, i ho fa si i només si maximitza la funció de log-versemblança: |
| 175 | |
| 176 | $$l(p, r) := \log(L(p, r)) = \sum_{i = 1}^n \left[ \log(\Gamma(r + x_i)) - \log(\Gamma(r)) - \log(x_i!) + r \log(p) + x_i \log(1 - p) \right]$$ |
| 177 | |
| 178 | Si derivem la funció de la log-versemblança i igualem les derivades a 0 per trobar màxims o mínims locals, trobem les següents equacions: |
| 179 | |
| 180 | $$\begin{cases} |
| 181 | \displaystyle 0 = \frac{\partial l}{\partial r} = \sum_{i = 1}^n \psi(r + x_i) + n (\log(p) - \psi(r)) \\ |
| 182 | \displaystyle 0 = \frac{\partial l}{\partial p} = n \left( \frac{r}{p} - \frac{\bar{X}}{1 - p} \right) \\ |
| 183 | \end{cases}$$ |
| 184 | |
| 185 | on $\psi(x) = \frac{\partial}{\partial x} \log(\Gamma(x))$ és la funció digamma. |
| 186 | |
| 187 | Reordenant la segona equació tenim: |
| 188 | |
| 189 | $$p = \frac{r}{\bar{X} + r}$$ |
| 190 | |
| 191 | I si substituïm aquesta darrera expressió a la primera equació, obtenim: |
| 192 | |
| 193 | $$0 = \sum_{i = 1}^n \psi(r + x_i) + n \left( \log\left( \frac{r}{\bar{X} + r} \right) - \psi(r) \right) =: F(r)$$ |
| 194 | |
| 195 | Aquí hem seguit el procediment conegut com a "profiling": trobar la solució explícita per un dels paràmetres en funció dels altres, i substituir aquesta expressió a les altres equacions per rebaixar la dimensió. |
| 196 | |
| 197 | Com ens ha quedat una equació amb una incògnita, trobarem els zeros d'aquesta darrera funció per tal de trobar el valor de $r$, i mitjançant l'anterior expressió trobarem el valor de $p$. |
| 198 | |
| 199 | La gràfica de la funció anterior $F(r)$ és: |
| 200 | |
| 201 | ```{r} |
| 202 | fr_scalar = function (r, x) { |
| 203 | return(sum(psigamma(x + r)) + length(x)*(log(r/(mean(x) + r)) - psigamma(r))) |
| 204 | } |
| 205 | |
| 206 | fr_list = function (r, x) { |
| 207 | val = lapply(r, fr_scalar, x) |
| 208 | return(val) |
| 209 | } |
| 210 | |
| 211 | x_l = seq(0.01, 300, length.out=3333) |
| 212 | y_l = fr_list(x_l, dd$v) |
| 213 | |
| 214 | plot(x_l, y_l, xlim=c(0.01, 125), ylim=c(-2, 2), ylab="F(r | x)", type="l") |
| 215 | ``` |
| 216 | |
| 217 | ### Pregunta 6 |
| 218 | El valor estimat de $p$ és: |
| 219 | |
| 220 | ```{r} |
| 221 | fr_uniparametric = function (r) { |
| 222 | return(fr_scalar(r, dd$v)) |
| 223 | } |
| 224 | |
| 225 | r_ml_result = uniroot(fr_uniparametric, lower=0.01, upper=1e5, tol=1e-10) |
| 226 | r_ml = r_ml_result$root |
| 227 | p_ml = r_ml/(mu1 + r_ml) |
| 228 | p_ml |
| 229 | ``` |
| 230 | |
| 231 | ### Pregunta 7 |
| 232 | El valor estimat de $r$ és: |
| 233 | |
| 234 | ```{r} |
| 235 | r_ml |
| 236 | ``` |
| 237 | |
| 238 | <span style="color: #aaa;">L'error estimat és de `r r_ml_result$estim.prec`</span> |
| 239 | |
| 240 | ### Pregunta 8 |
| 241 | El valor estimat de $\mathbb{E}(X)$ és: |
| 242 | ```{r} |
| 243 | mu1_ml = (r_ml*(1 - p_ml))/p_ml |
| 244 | mu1_ml |
| 245 | ``` |
| 246 | |
| 247 | ### Pregunta 9 |
| 248 | El valor estimat de $Var(X)$ és: |
| 249 | |
| 250 | ```{r} |
| 251 | var_ml = (r_ml*(1 - p_ml))/(p_ml^2) |
| 252 | var_ml |
| 253 | ``` |
| 254 | |
| 255 | ### Pregunta 10 |
| 256 | El valor de $\max(|F_{mv}(x) - F_{fr}(x)|)$ és: |
| 257 | |
| 258 | ```{r} |
| 259 | # |pemp_x| definida a la pregunta 5 |
| 260 | |
| 261 | pnbinom_b = function(x) { |
| 262 | return(pnbinom(x, size=r_ml, prob=p_ml)) |
| 263 | } |
| 264 | |
| 265 | curve(pemp_x, col="red", from=0, to=graph_max, n=3333) |
| 266 | curve(pnbinom_b, col="blue", from=0, to=graph_max, n=3333, add=T) |
| 267 | legend(1, 1, legend=c("pemp(x)", "pnbinom_ml(x)"), col=c("red", "blue"), lty=c(1, 1)) |
| 268 | ``` |
| 269 | |
| 270 | ```{r} |
| 271 | curve(abs(pemp_x(x) - pnbinom_b(x)), from=0, to=graph_max, ylab="abs(pemp(x) - pnbinom_ml(x))", n=3333) |
| 272 | # |xeq| definida a la pregunta 5 |
| 273 | max(abs(pemp_x(xeq) - pnbinom_b(xeq))) |
| 274 | ``` |
| 275 | |
| 276 | ### Pregunta 11 |
| 277 | Assumint que els valors dels paràmetres de $X$ fossin els valors estimats per màxima versemblança, trobeu $[a, b]$, la regió de predicció de $X$ (amb probabilitat ≥ <ch>`r prob_11`</ch> i dues cues equiprobables): |
| 278 | |
| 279 | **Resolució:** |
| 280 | |
| 281 | Volum una regió central amb probabilitat més gran o igual a `r prob_11` i per tant dues cues amb probabilitat menor o igual a $\alpha := \frac{1 - `r prob_11`}{2}$. A més a més, volem que les cues siguin el més gran possibles dins del rang de probabilitats que poden prendre. |
| 282 | |
| 283 | ```{r} |
| 284 | alpha_11 = (1-prob_11)/2 |
| 285 | #a_11 = qnbinom(alpha_11, size=r_ml, prob=p_ml) + 1 |
| 286 | |
| 287 | a_prov = -1 |
| 288 | for (i in 0:10000) { |
| 289 | if (pnbinom(i, size=r_ml, prob=p_ml) <= alpha_11) { |
| 290 | a_prov = i + 1 |
| 291 | } else { |
| 292 | break |
| 293 | } |
| 294 | } |
| 295 | a_11 = a_prov |
| 296 | b_11 = qnbinom(1 - alpha_11, size=r_ml, prob=p_ml) |
| 297 | ``` |
| 298 | |
| 299 | > $[`r a_11`, `r b_11`]$ |
| 300 | |
| 301 | ### Pregunta 12 |
| 302 | De la regió de l'apartat 11) calculeu $Pr(X \in [a, b])$: |
| 303 | |
| 304 | ```{r} |
| 305 | p_12 = pnbinom(b_11, size=r_ml, prob=p_ml) - pnbinom(a_11 - 1, size=r_ml, prob=p_ml) |
| 306 | p_12 |
| 307 | ``` |
| 308 | |
| 309 | |
| 310 | ## Apartat c) |
| 311 | **En el supòsit que considerem que $p$ és una v.a. amb funció de densitat proporcional a $f(p) \propto p^a (1 - p)^b$, amb <ch>$a = `r a_c`$</ch> i <ch>$b = `r b_c`$</ch> amb el valor de $r$ conegut i igual a <ch>$`r r_c`$</ch>. Un cop coneguda la vostra mostra, calculeu la funció de densitat a posteriori de $p$, dibuixeu-la i contesteu les preguntes següents:** |
| 312 | |
| 313 | ### Pregunta 13 |
| 314 | L'esperança de la distribució a posteriori de $p$ és: |
| 315 | |
| 316 | ```{r} |
| 317 | # Paràmetres de la distribució a posteriori: |
| 318 | alpha_post = a_c + length(dd$v)*r_c + 1 |
| 319 | beta_post = b_c + length(dd$v)*mean(dd$v) + 1 |
| 320 | |
| 321 | esp_13 = (alpha_post)/(alpha_post + beta_post) |
| 322 | esp_13 |
| 323 | ``` |
| 324 | |
| 325 | ### Pregunta 14 |
| 326 | La variància de la distribució a posteriori de $p$ és: |
| 327 | |
| 328 | ```{r} |
| 329 | var_14 = (alpha_post*beta_post)/((alpha_post + beta_post)^2*(alpha_post + beta_post + 1)) |
| 330 | var_14 |
| 331 | ``` |
| 332 | |
| 333 | ### Pregunta 15 |
| 334 | A posteriori, l'esperança de $X$ és: |
| 335 | |
| 336 | ```{r} |
| 337 | esp_15 = r_c*beta_post/(alpha_post - 1) |
| 338 | esp_15 |
| 339 | ``` |
| 340 | |
| 341 | ### Pregunta 16 |
| 342 | A posteriori, la variància de $X$ és: |
| 343 | |
| 344 | ```{r} |
| 345 | #var_16 = r_c*(r_c + 1)*(alpha_post + beta_post - 1)*beta_post/((alpha_post - 1)*(alpha_post - 2)) - esp_15^2 |
| 346 | #var_16 |
| 347 | |
| 348 | r_c*(alpha_post + beta_post - 1)*beta_post/((alpha_post - 1)*(alpha_post - 2)) + r_c^2*beta_post*(beta_post + 1)/((alpha_post - 1)*(alpha_post - 2)) - r_c^2*beta_post^2/((alpha_post - 1)^2) |
| 349 | ``` |
| 350 | |
| 351 | <!-- Custom styles --> |
| 352 | <style> |
| 353 | /* ch element (|ch| stands for check) */ |
| 354 | ch { |
| 355 | color: red; |
| 356 | } |
| 357 | </style> |