diff --git a/entregables/.gitignore b/entregables/.gitignore
new file mode 100644
index 0000000..1cc8541
--- /dev/null
+++ b/entregables/.gitignore
@@ -0,0 +1,3 @@
+*.html
+*.pdf
+figure-markdown_strict/
diff --git a/entregables/ent2/ent2.Rmd b/entregables/ent2/ent2.Rmd
new file mode 100644
index 0000000..f390a54
--- /dev/null
+++ b/entregables/ent2/ent2.Rmd
@@ -0,0 +1,357 @@
+---
+title: "Entregable 2 - Estadística"
+subtitle: "Grau de Matemàtiques, Curs 2020-21"
+author: "Vilanova Martínez, Adrià"
+output: html_document
+---
+
+```{r message=FALSE}
+# Libraries
+library(EnvStats)
+```
+
+## Configuració
+Aquí es pot configurar la pràctica depenent del que es pregunti:
+
+```{r}
+# Si |generate_random| és TRUE, en comptes d'utilitzar la mostra donada a la
+# variable |input|, es genera una mostra aleatòria seguint la distribució
+# binomial negativa de mida |random_n|, amb paràmetres |random_size| i
+# |random_prob|
+generate_random = FALSE
+
+# Dades de la mostra (s'usen si |generate_random| és FALSE)
+input = data.frame(
+  value = seq(0, 29),
+  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
+  #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
+  #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
+)
+
+# Paràmetres de la mostra aleatòria (s'usen si |generate_random| és TRUE)
+random_size = 10
+random_prob = 0.3
+random_n = 2000
+
+# == Adri ==
+# Probabilitat de la regió de predicció de la pregunta 11:
+prob_11 = 0.99
+
+# Paràmetres a, b i r de l'apartat c:
+a_c = -0.3
+b_c = -0.5
+r_c = 43
+
+# == Pedro ==
+# Probabilitat de la regió de predicció de la pregunta 11:
+#prob_11 = 0.95
+
+# Paràmetres a, b i r de l'apartat c:
+#a_c = 0.3
+#b_c = 2
+#r_c = 7
+
+# == Paula ==
+# Probabilitat de la regió de predicció de la pregunta 11:
+#prob_11 = 0.9
+
+# Paràmetres a, b i r de l'apartat c:
+#a_c = 0.2
+#b_c = 0.8
+#r_c = 15
+```
+
+```{r}
+if (generate_random == FALSE) {
+  dd = data.frame(
+    v = rep(input$value, input$freq)
+  )
+} else {
+  dd = data.frame(
+    v = rnbinom(random_n, size=random_size, prob=random_prob)
+  )
+}
+```
+
+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>
+
+## Apartat a)
+**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:**
+
+Els moments teòrics són:
+
+$$\begin{cases}
+  \mu_1 = \mathbb{E}[X] = \frac{r(1 - p)}{p} \\
+  \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}
+\end{cases}$$
+
+Pel mètode dels moments, igualem els moments mostrals i teòrics:
+
+$$\begin{cases}
+  \hat{\mu}_1 = \frac{r(1 - p)}{p} \\
+  \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}
+\end{cases}$$
+
+De la segona equació podem aïllar $p$ i trobem:
+
+$$\hat{p}_{mm} = \frac{\hat{\mu}_1^2}{\hat{\mu}_2 - \hat{\mu}_1^2}$$
+
+Després substituim aquest resultat a la primera equació, i aïllant $r$ trobem que:
+
+$$\hat{r}_{mm} = \frac{\hat{\mu}_1^2}{\hat{\mu}_2 - \hat{\mu}_1^2 - \hat{\mu}_1}$$
+
+### Pregunta 1
+El valor estimat de $p$ és:
+
+```{r}
+mu1 = mean(dd$v)
+#mu2 = mean(dd$v)^2 + var(dd$v) # WRONG
+mu2 = sum(dd$v^2)/length(dd$v)
+pmm = mu1/(mu2 - mu1^2)
+pmm
+```
+
+### Pregunta 2
+El valor estimat de $r$ és:
+
+```{r}
+rmm = mu1^2/(mu2 - mu1^2 - mu1)
+rmm
+```
+
+### Pregunta 3
+El valor estimat de $\mathbb{E}[X]$ és:
+```{r}
+mu1
+```
+
+### Pregunta 4
+El valor estimat de $Var(X)$ és:
+```{r}
+# Although we could also calculate varx as |mu2 - mu1^2|, it is much cleaner to
+# do it this way
+#varx = var(dd$v) # WRONG
+#varx
+mu2 - mu1^2
+```
+
+### Pregunta 5
+El valor de $\max(|F_{mm}(x) - F_{fr}(x)|)$ és:
+
+```{r}
+pemp_x = function(x) {
+  return(pemp(x, dd$v, discrete=TRUE))
+}
+
+pnbinom_a = function(x) {
+  return(pnbinom(x, size=rmm, prob=pmm))
+}
+
+graph_max = max(dd$v) + 5
+
+curve(pemp_x, col="red", from=0, to=graph_max, n=3333)
+curve(pnbinom_a, col="blue", from=0, to=graph_max, n=3333, add=T)
+legend(1, 1, legend=c("pemp(x)", "pnbinom_mm(x)"), col=c("red", "blue"), lty=c(1, 1))
+```
+
+```{r}
+curve(abs(pemp_x(x) - pnbinom_a(x)), from=0, to=graph_max, ylab="abs(pemp(x) - pnbinom_mm(x))", n=3333)
+xeq = seq(-1, graph_max, 0.5)
+max(abs(pemp_x(xeq) - pnbinom_a(xeq)))
+```
+
+## Apartat b)
+**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:**
+
+La funció de probabilitat de la distribució binomial negativa és:
+
+$$P(X = x) = \binom{r + x - 1}{x} p^r (1 - p)^x$$
+
+Per tant, la funció de versemblança és:
+
+$$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}$$
+
+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:
+
+$$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]$$
+
+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:
+
+$$\begin{cases}
+  \displaystyle 0 = \frac{\partial l}{\partial r} = \sum_{i = 1}^n \psi(r + x_i) + n (\log(p) - \psi(r)) \\
+  \displaystyle 0 = \frac{\partial l}{\partial p} = n \left( \frac{r}{p} - \frac{\bar{X}}{1 - p} \right) \\
+\end{cases}$$
+
+on $\psi(x) = \frac{\partial}{\partial x} \log(\Gamma(x))$ és la funció digamma.
+
+Reordenant la segona equació tenim:
+
+$$p = \frac{r}{\bar{X} + r}$$
+
+I si substituïm aquesta darrera expressió a la primera equació, obtenim:
+
+$$0 = \sum_{i = 1}^n \psi(r + x_i) + n \left( \log\left( \frac{r}{\bar{X} + r} \right) - \psi(r) \right) =: F(r)$$
+
+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ó.
+
+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$.
+
+La gràfica de la funció anterior $F(r)$ és:
+
+```{r}
+fr_scalar = function (r, x) {
+  return(sum(psigamma(x + r)) + length(x)*(log(r/(mean(x) + r)) - psigamma(r)))
+}
+
+fr_list = function (r, x) {
+  val = lapply(r, fr_scalar, x)
+  return(val)
+}
+
+x_l = seq(0.01, 300, length.out=3333)
+y_l = fr_list(x_l, dd$v)
+
+plot(x_l, y_l, xlim=c(0.01, 125), ylim=c(-2, 2), ylab="F(r | x)", type="l")
+```
+
+### Pregunta 6
+El valor estimat de $p$ és:
+
+```{r}
+fr_uniparametric = function (r) {
+  return(fr_scalar(r, dd$v))
+}
+
+r_ml_result = uniroot(fr_uniparametric, lower=0.01, upper=1e5, tol=1e-10)
+r_ml = r_ml_result$root
+p_ml = r_ml/(mu1 + r_ml)
+p_ml
+```
+
+### Pregunta 7
+El valor estimat de $r$ és:
+
+```{r}
+r_ml
+```
+
+<span style="color: #aaa;">L'error estimat és de `r r_ml_result$estim.prec`</span>
+
+### Pregunta 8
+El valor estimat de $\mathbb{E}(X)$ és:
+```{r}
+mu1_ml = (r_ml*(1 - p_ml))/p_ml
+mu1_ml
+```
+
+### Pregunta 9
+El valor estimat de $Var(X)$ és:
+
+```{r}
+var_ml = (r_ml*(1 - p_ml))/(p_ml^2)
+var_ml
+```
+
+### Pregunta 10
+El valor de $\max(|F_{mv}(x) - F_{fr}(x)|)$ és:
+
+```{r}
+# |pemp_x| definida a la pregunta 5
+
+pnbinom_b = function(x) {
+  return(pnbinom(x, size=r_ml, prob=p_ml))
+}
+
+curve(pemp_x, col="red", from=0, to=graph_max, n=3333)
+curve(pnbinom_b, col="blue", from=0, to=graph_max, n=3333, add=T)
+legend(1, 1, legend=c("pemp(x)", "pnbinom_ml(x)"), col=c("red", "blue"), lty=c(1, 1))
+```
+
+```{r}
+curve(abs(pemp_x(x) - pnbinom_b(x)), from=0, to=graph_max, ylab="abs(pemp(x) - pnbinom_ml(x))", n=3333)
+# |xeq| definida a la pregunta 5
+max(abs(pemp_x(xeq) - pnbinom_b(xeq)))
+```
+
+### Pregunta 11
+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):
+
+**Resolució:**
+
+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.
+
+```{r}
+alpha_11 = (1-prob_11)/2
+#a_11 = qnbinom(alpha_11, size=r_ml, prob=p_ml) + 1
+
+a_prov = -1
+for (i in 0:10000) {
+  if (pnbinom(i, size=r_ml, prob=p_ml) <= alpha_11) {
+    a_prov = i + 1
+  } else {
+    break
+  }
+}
+a_11 = a_prov
+b_11 = qnbinom(1 - alpha_11, size=r_ml, prob=p_ml)
+```
+
+> $[`r a_11`, `r b_11`]$
+
+### Pregunta 12
+De la regió de l'apartat 11) calculeu $Pr(X \in [a, b])$:
+
+```{r}
+p_12 = pnbinom(b_11, size=r_ml, prob=p_ml) - pnbinom(a_11 - 1, size=r_ml, prob=p_ml)
+p_12
+```
+
+
+## Apartat c)
+**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:**
+
+### Pregunta 13
+L'esperança de la distribució a posteriori de $p$ és:
+
+```{r}
+# Paràmetres de la distribució a posteriori:
+alpha_post = a_c + length(dd$v)*r_c + 1
+beta_post = b_c + length(dd$v)*mean(dd$v) + 1
+
+esp_13 = (alpha_post)/(alpha_post + beta_post)
+esp_13
+```
+
+### Pregunta 14
+La variància de la distribució a posteriori de $p$ és:
+
+```{r}
+var_14 = (alpha_post*beta_post)/((alpha_post + beta_post)^2*(alpha_post + beta_post + 1))
+var_14
+```
+
+### Pregunta 15
+A posteriori, l'esperança de $X$ és:
+
+```{r}
+esp_15 = r_c*beta_post/(alpha_post - 1)
+esp_15
+```
+
+### Pregunta 16
+A posteriori, la variància de $X$ és:
+
+```{r}
+#var_16 = r_c*(r_c + 1)*(alpha_post + beta_post - 1)*beta_post/((alpha_post - 1)*(alpha_post - 2)) - esp_15^2
+#var_16
+
+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)
+```
+
+<!-- Custom styles -->
+<style>
+/* ch element (|ch| stands for check) */
+ch {
+  color: red;
+}
+</style>
diff --git a/entregables/ent3/ent3.Rmd b/entregables/ent3/ent3.Rmd
new file mode 100644
index 0000000..c0863e5
--- /dev/null
+++ b/entregables/ent3/ent3.Rmd
@@ -0,0 +1,252 @@
+---
+title: "Entregable 3 - Estadística"
+subtitle: "Grau de Matemàtiques, Curs 2020-21"
+author: "Vilanova Martínez, Adrià"
+output: html_document
+---
+
+```{r message=FALSE}
+# Libraries
+library(EnvStats)
+
+# Decimal separator (we have to fill in the results with commas :( )
+options(OutDec=",")
+```
+
+## Configuració
+Aquí es pot configurar la pràctica depenent del que es pregunti:
+
+```{r}
+# APARTAT A
+# Esperança de l'estadístic T(X):
+a_alpha = 3.01
+a_beta = 0.07
+
+# APARTAT B
+# Mitjana dels log(X)
+b_logx_mean = 2.97913
+# Mitjana dels 1/X
+b_invx_mean = 0.06817
+# Mida de la mostra
+b_n = 300
+
+# APARTAT C
+# 1 - alpha (sobre 1) de l'interval de confiança asimptòtic
+c_int = 0.9
+```
+
+Altres dades:
+
+```
+# == PAULA ==
+a_alpha = 2.02
+a_beta = 0.16
+b_logx_mean = 1.99872
+b_invx_mean = 0.16025
+b_n = 376
+c_int = 0.9
+
+# == PEDRO ==
+a_alpha = 1.67
+a_beta = 0.21
+b_logx_mean = 1.69553
+b_invx_mean = 0.20009
+b_n = 338
+c_int = 0.9
+```
+
+
+## Introducció
+
+**Considerem la variable aleatòria biparamètrica $X$ amb funció de densitat:**
+
+$$f(x; \lambda, \eta) = \frac{\eta^\lambda}{\Gamma(\lambda)} x^{-\lambda - 1} e^{-\frac{\eta}{x}}$$
+
+**Comproveu que és una família exponencial amb els estadístics $T(x) = (\log(x), \frac{1}{x})$, trobeu-ne el paràmetre canònic $\theta = (\theta_1, \theta_2)$ i la constant $C(\theta)$. En algut apartat caldrà fer servir la funció digamma $\psi(x)$ que correspon a la derivada del logaritme de la funció Gamma.**
+
+$$f(x; \lambda, \eta) = \frac{\eta^\lambda}{\Gamma(\lambda)} x^{-\lambda - 1} e^{-\frac{\eta}{x}} = \frac{\eta^\lambda}{\Gamma(\lambda)} x^{-\lambda - 1} e^{-\frac{\eta}{x}}$$
+
+## Apartat a)
+**En el cas que sabéssim que <ch>$\mathbb{E}[T(X)] = (`r a_alpha`, `r a_beta`) = (\alpha, \beta)$</ch>, contesteu les preguntes següents:**
+
+### Pregunta 1
+Quin seria el valor de $\lambda$?
+
+$$\log\left(\frac{\lambda}{\beta}\right) - \psi(\lambda) - \alpha = 0$$
+
+```{r}
+a_eq = function (lambda) {
+  return(log(lambda/a_beta) - digamma(lambda) - a_alpha)
+}
+
+a_lambda_result = uniroot(a_eq, lower=0.01, upper=1e5, tol=1e-10)
+a_lambda = a_lambda_result$root
+a_lambda
+```
+
+### Pregunta 2
+Quin seria el valor de $\eta$?
+
+$$\eta = \frac{\lambda}{\beta}$$
+
+```{r}
+a_eta = a_lambda/a_beta
+a_eta
+```
+
+### Pregunta 3
+Quin seria el valor de $Var(\log(X))$?
+
+$$Var(\log(X)) = \psi'(\lambda)$$
+
+```{r}
+r3 = trigamma(a_lambda)
+r3
+```
+
+### Pregunta 4
+Quin seria el valor de $Var\left(\frac{1}{X}\right)$?
+
+$$Var\left(\frac{1}{X}\right) = \frac{\lambda}{\eta^2}$$
+
+```{r}
+r4 = a_lambda/(a_eta**2)
+r4
+```
+
+### Pregunta 5
+Quin seria el valor de $Cov\left(\log(X), \frac{1}{X}\right)$?
+
+$$Cov\left(\log(X), \frac{1}{X}\right) = - \frac{1}{\eta}$$
+
+```{r}
+r5 = -1/a_eta
+r5
+```
+
+## Apartat b)
+**En la situació habitual en què no coneixem el valor dels paràmetres, però tenim una mostra: si la grandària és <ch>`r b_n`</ch>, la mitjana dels logaritmes de les $X$ ha donat <ch>`r b_logx_mean`</ch> i la de les inverses $\frac{1}{X}$ ha donat <ch>`r b_invx_mean`</ch>, estimeu per màxima versemblança els paràmetres de la distribució $\lambda$ i $\eta$. Calculeu la matriu d'Informació en els paràmetres canònics, avalueu la matriu en el màxim versemblant, i contesteu:**
+
+Primer trobem els estimadors de $\alpha$, $\beta$:
+
+```{r}
+b_alpha = b_logx_mean
+b_beta = b_invx_mean
+```
+
+Aleshores, ara hem de resoldre les mateixes equacions de les preguntes 1 i 2 per transformar els estimadors de $\alpha$, $\beta$ en els estimadors de $\lambda$, $\eta$ pel principi de la invariància.
+
+```{r}
+b_eq = function (lambda) {
+  return(log(lambda/b_beta) - digamma(lambda) - b_alpha)
+}
+
+b_lambda_result = uniroot(b_eq, lower=0.01, upper=1e5, tol=1e-10)
+b_lambda = b_lambda_result$root
+b_eta = b_lambda/b_beta
+```
+
+### Pregunta 6
+L'estimador m.v. de $\lambda$ ha donat:
+
+```{r}
+b_lambda
+```
+
+
+### Pregunta 7
+L'estimador m.v. d'$\eta$ ha donat:
+
+```{r}
+b_eta
+```
+
+### Pregunta 8
+El terme $[1, 1]$ de la matriu d'informació obtinguda és:
+
+```{r}
+b_IX11 = b_n*trigamma(b_lambda)
+b_IX11
+```
+
+### Pregunta 9
+El terme $[2, 2]$ de la matriu d'informació obtinguda és:
+
+```{r}
+b_IX22 = b_n*b_lambda/(b_eta**2)
+b_IX22
+```
+
+### Pregunta 10
+El terme $[1, 2]$ de la matriu d'informació obtinguda és:
+
+```{r}
+b_IX12 = b_n*(-1/b_eta)
+b_IX12
+```
+
+## Apartat c)
+**En la mateixa situació de l'apartat b), calculeu la fita de Cramer-Rao de l'estimador màxim versemblant de $T(X) = \left( \mathbb{E}[\log(X)], \mathbb{E}\left[ \frac{1}{X} \right] \right)$. Utilitzant el teorema central del límit, calculeu l'interval de confiança asimptòtic (<ch>`r c_int`</ch> dues cues) del paràmetre $\lambda$, i també el de $\eta$. Contesteu:**
+
+### Pregunta 11
+La fita de Cramer-Rao de l'estimador m.v. de $\mathbb{E}[\log(x)]$ és:
+
+```{r}
+r11 = 1/b_n*trigamma(b_lambda)
+r11
+```
+
+### Pregunta 12
+La fita de Cramer-Rao de l'estimador m.v. de $\mathbb{E}\left[ \frac{1}{X} \right]$ és:
+
+```{r}
+r12 = 1/b_n*(b_lambda/(b_eta**2))
+r12
+```
+
+## Pregunta 13
+L'interval de confiança de $\lambda$ és:
+
+```{r}
+alpha = 1 - c_int
+cota1 = b_lambda/(b_n*(b_lambda*trigamma(b_lambda) - 1))
+c_13_a = qnorm(alpha/2)*sqrt(cota1) + b_lambda
+c_13_b = qnorm(1 - alpha/2)*sqrt(cota1) + b_lambda
+```
+
+$[`r c_13_a`, `r c_13_b`]$
+
+## Pregunta 14
+L'interval de confiança de $\eta$ és:
+
+```{r}
+cota2 = (b_eta**2)*trigamma(b_lambda)/(b_n*(b_lambda*trigamma(b_lambda) - 1))
+c_14_a = qnorm(alpha/2)*sqrt(cota2) + b_eta
+c_14_b = qnorm(1 - alpha/2)*sqrt(cota2) + b_eta
+```
+
+$[`r c_14_a`, `r c_14_b`]$
+
+## Resum
+1. `r a_lambda`
+2. `r a_eta`
+3. `r r3`
+4. `r r4`
+5. `r r5`
+6. `r b_lambda`
+7. `r b_eta`
+8. `r b_IX11`
+9. `r b_IX22`
+10. `r b_IX12`
+11. `r r11`
+12. `r r12`
+13. `r c_13_a`
+14. `r c_14_b`
+
+<!-- Custom styles -->
+<style>
+/* ch element (|ch| stands for check) */
+ch {
+  color: red;
+}
+</style>
diff --git a/entregables/ent4/data.csv b/entregables/ent4/data.csv
new file mode 100644
index 0000000..a148dc4
--- /dev/null
+++ b/entregables/ent4/data.csv
@@ -0,0 +1,71 @@
+"ID";"Grupo";"Sexo";"Edad";"NivEstud";"EstCiv";"Diag";"AnEvol";"VelocProc_B";"AtenVig_B";"MemorTrab_B";"AprenVerb_B";"AprenVis_B";"RazonRes_B";"VelocProc_P";"AtenVig_P";"MemorTrab_P";"AprenVerb_P";"AprenVis_P";"RazonRes_P"
+1;"GC";"H";33;"S";"S";"TP";12;17,89;25;44,76;40,45;35,17;34,73;7,75;27,66;34,26;25,81;46,94;36,57
+2;"GC";"H";46;"S";"S";"OT";8;27,57;36,16;21,08;26,5;25,92;43,75;15,6;38,1;17,23;32,07;20,13;40,93
+3;"GC";"H";54;"PI";"O";"TP";10;24,77;28,03;15,42;42,26;52,01;50,31;28,43;42,98;32,82;31,14;37,82;34,46
+4;"GC";"M";56;"PI";"O";"TP";13;32,22;44,61;28,89;35,52;38,28;49,87;30,05;32,35;4,41;32,07;6,59;31,28
+5;"GC";"H";50;"PI";"S";"TP";30;20,2;21,42;22,36;18,17;19,85;39,25;41,06;29,31;28,39;34,86;19,12;28,1
+6;"GC";"M";52;"PI";"S";"TP";43;38,96;42,06;52,32;36,2;38,25;15,06;41,74;50,42;37,28;36,19;36,69;29,71
+7;"GC";"H";50;"S";"S";"OT";15;30,22;27,77;10,89;28,82;53,65;28,72;28,22;25,92;38,1;52,56;43,42;26,23
+8;"GC";"H";64;"PC";"S";"TP";25;13,23;27,51;36,62;36,54;44,89;31,92;30,28;36,31;37,62;17,67;27,54;35,62
+9;"GC";"M";48;"S";"S";"OT";34;17,61;27,28;17,1;55,84;45,83;37,99;20,64;34,36;16,53;31,93;23,75;39,3
+10;"GC";"H";35;"PI";"O";"TP";5;35,92;25,13;40,18;33,6;37,89;20,32;26,68;35,53;29,63;41,4;45,52;38,11
+11;"GC";"H";39;"PC";"S";"TP";9;8,63;25,36;23,72;37,26;23,13;33,07;22,76;38,18;26,21;41,56;35,12;36,34
+12;"GC";"M";50;"PI";"S";"TP";17;1,91;27,74;18,6;56,46;16,26;39,45;22,72;14,26;19,14;34,02;40,3;33,6
+13;"GC";"M";59;"S";"O";"OT";-2;11,18;42,98;38,91;33,69;42,47;20,68;18,35;14,66;30,11;40,31;51,5;32,86
+14;"GC";"H";33;"S";"S";"TP";3;34,82;24,65;33,76;23,2;36,39;26,36;22,23;26,24;28,98;39,2;37,5;21,11
+15;"GC";"H";49;"S";"S";"TP";33;21,93;25,4;44,72;31,41;50,59;45,02;20,83;42,94;27,53;44,08;50,52;37,98
+16;"GC";"M";53;"PC";"S";"OT";36;18,48;25,27;41,93;40,6;27,35;36,89;22,8;27,17;14,46;28,87;27,58;21,33
+17;"GC";"H";42;"S";"S";"OT";21;29,93;37,42;60,35;20,08;47,99;54,37;21,42;53,36;17,93;39,38;23,58;26,48
+18;"GC";"H";26;"S";"S";"TP";11;20,12;17,47;13,2;43,45;19,94;48,04;32,84;29,11;10,55;31,47;7,72;43,19
+19;"GC";"H";50;"PI";"S";"TP";18;19,28;24,83;18,97;36,65;48,11;36,39;22,2;37,28;8,46;35,45;15,69;46,92
+20;"GC";"M";50;"S";"O";"TP";19;17,56;40,34;12,14;42,83;46,26;32,18;21,55;31,44;23,57;23,01;62,24;49,74
+21;"GC";"H";42;"PC";"S";"TP";26;30,1;27,14;16,34;44,89;18,16;35,48;29,99;40,18;44,56;42,33;36,33;24,7
+22;"GC";"H";47;"S";"S";"TP";5;29,4;15,09;27,54;58,21;27,73;24,6;12,49;33,01;20,01;33,57;22,68;29,09
+23;"GC";"M";40;"PC";"S";"OT";2;33,64;19,22;33,6;26,5;31,28;33,81;20,17;17,97;34,56;26,15;36,28;45,18
+24;"GC";"M";58;"PC";"S";"TP";13;26,43;30,93;21,08;33,21;43,61;19,64;18,9;25,54;41,57;30,14;55,58;30,36
+25;"GC";"H";40;"PI";"S";"TP";6;34,98;20,41;19,88;33,92;44,05;27,91;31,16;23,55;7,18;37,71;26,21;36,25
+26;"GC";"M";28;"PC";"S";"OT";12;24,42;31,23;31,38;26,16;28,57;32,56;28,72;12,23;16,32;40,88;57,84;36,1
+27;"GC";"M";43;"S";"S";"TP";21;14,34;30,51;32,53;44,76;31,62;19,5;22,12;6,76;30,59;51,64;22,8;27,65
+28;"GC";"H";40;"PC";"S";"TP";6;31,68;26,01;0,55;27,11;39,57;37,91;21,34;34,37;29,12;29,31;27,61;40,73
+29;"GC";"M";49;"PC";"S";"TP";6;30,56;18,49;27,04;34,31;23,24;25,81;23,66;38,72;18,49;43,38;32,09;33,9
+30;"GC";"M";38;"PI";"O";"TP";10;17,96;36,26;24,26;34,99;45,25;44,15;22,27;28,51;17,36;34,12;18,7;26,84
+31;"GC";"H";53;"S";"O";"TP";33;47,29;17,84;39,08;28,08;23,31;22,35;19,53;29,61;25,87;36,29;19,71;30,11
+32;"GC";"H";36;"PI";"S";"TP";21;40,85;24,36;20,96;25,12;4,94;40,24;20,18;16,05;34,18;34,34;37,4;36,71
+33;"GC";"H";65;"S";"S";"TP";17;12,98;37,44;35,62;38,39;38,41;37,61;32,26;24,27;29,69;33,01;26,52;29,66
+34;"GC";"H";36;"PI";"S";"TP";20;37,88;28,44;38,54;24,55;34,08;27,7;25,25;28,72;10,99;36,85;52,17;30,54
+35;"GC";"H";36;"PI";"S";"TP";5;30,37;34,01;43,63;29,51;48,34;53,9;27,75;17,55;31,42;19,58;38,73;33,26
+36;"GE";"H";44;"S";"O";"TP";20;30,74;20,2;16,57;35,72;11,76;46,01;30,16;48,66;23,56;28,57;50,33;32,32
+37;"GE";"H";51;"PI";"S";"TP";18;16,11;35,7;31,09;20,35;14,01;34,2;30,79;10,3;37,94;49,76;34,23;48,26
+38;"GE";"M";36;"S";"S";"OT";7;20,04;33,5;39,55;31,26;43,62;37,69;28,76;10,12;45,01;42,66;21,72;45,41
+39;"GE";"H";31;"S";"S";"OT";23;14;26,34;25,09;24,5;40;38,33;29,24;15,86;32,37;46,09;7,92;51,86
+40;"GE";"M";23;"PC";"S";"TP";8;25,12;43,5;21,33;34,4;43,49;29,37;21,55;24,53;37;41,45;54,12;48,29
+41;"GE";"M";36;"PC";"S";"TP";17;25,67;19,3;15,22;42,93;50,27;34,53;11,29;20,19;41,43;52,87;40,45;31,89
+42;"GE";"M";33;"PC";"O";"TP";12;35,5;36,16;17,84;31,42;27,86;36,58;9,29;25,83;34,85;49,19;25,41;36,06
+43;"GE";"M";45;"S";"S";"TP";23;11,21;-16,67;41,84;29,27;39,97;39,67;21,26;34,28;45,66;21,82;59,27;27,46
+44;"GE";"H";36;"S";"S";"TP";-1;5,32;24,88;22,56;42,88;35,63;31,49;54,64;13,93;29,81;29,6;36,26;35,77
+45;"GE";"M";37;"S";"O";"OT";17;-2,24;23,1;21,33;31,67;52,73;31,29;22,31;17,94;39,19;34,7;17,97;26,26
+46;"GE";"H";50;"S";"S";"TP";16;8,12;6,22;43,35;37,53;25,49;31,52;28,5;25,22;39,43;23,02;39,86;43,62
+47;"GE";"M";30;"PI";"O";"OT";11;8,28;21,94;25,52;34,66;28,79;34,67;30,33;21,66;27,36;30,25;42,79;32,94
+48;"GE";"H";55;"PC";"O";"OT";14;10,64;47,4;33,88;49,22;47,13;31,63;-1,06;26,57;40,79;38,26;38,66;55,55
+49;"GE";"H";48;"PC";"S";"TP";5;4,54;26,09;26,89;37,64;28,43;29,2;5,66;29,35;40,48;36,37;57,1;38,51
+50;"GE";"H";37;"PI";"S";"OT";22;15,67;42,08;32,33;33,83;6,84;40,24;20,36;21,57;47,95;29,95;41,74;26,74
+51;"GE";"H";43;"PC";"S";"OT";21;13,25;39,35;27,51;31,5;35,61;31,6;29,19;23,47;27,15;34,83;27,13;38,07
+52;"GE";"H";50;"PC";"S";"TP";8;27,88;42,65;25,68;40,56;34,9;32,16;14,82;25,08;19,32;37,53;66,88;45,97
+53;"GE";"H";42;"PC";"S";"OT";14;16,24;29,27;28,09;33,11;34,58;27,12;39,51;20,75;39,5;44,85;49,11;45,3
+54;"GE";"H";46;"PI";"S";"OT";29;24,81;18,75;27,99;30,18;52,92;40,85;47,17;28,02;34,66;34,06;43,35;35,51
+55;"GE";"M";47;"PI";"S";"OT";9;25,53;29,28;29,45;39,4;34,45;37,28;12,14;17,23;26,67;35,01;61,91;34,62
+56;"GE";"H";58;"PC";"O";"OT";14;30,15;6,8;39,93;30,99;51,3;36,15;39,56;21,56;47,35;34,66;70,4;34,71
+57;"GE";"H";54;"S";"S";"TP";12;36,71;31,69;27,2;29,1;3,78;33,26;30,83;29,44;15,48;33,17;54,41;30,28
+58;"GE";"M";45;"PC";"O";"TP";38;41,06;27,44;27,25;30,82;37,1;47,19;19,26;28,38;58,97;37,67;60,41;34,34
+59;"GE";"H";31;"S";"S";"TP";21;34,71;6,74;43,02;37,59;14,73;22,18;4,31;19,36;25,03;25,39;23,19;36,39
+60;"GE";"H";58;"PI";"S";"TP";18;-6,25;35,48;23,47;33,99;50,18;34,72;0,41;24,67;31,89;33,07;27,23;32,4
+61;"GE";"M";47;"PC";"S";"TP";19;42,75;2,88;31,33;40,86;52,77;34,99;41,21;23,25;51,2;41,96;42,91;12,58
+62;"GE";"H";49;"S";"S";"TP";22;20,34;26,2;33,81;33,03;20,87;35,79;19,95;20,48;34,86;40,57;36,13;24,72
+63;"GE";"H";54;"S";"S";"TP";15;9,23;35,07;15,76;29,02;35,19;33,76;32,64;14,06;45,71;50,83;24,99;20,96
+64;"GE";"H";53;"PC";"S";"TP";21;35,67;29,89;39,82;34,68;29,66;33,54;50,93;19,86;36,49;47,2;28,55;33,15
+65;"GE";"H";48;"PC";"S";"TP";26;12,14;28,52;19,36;38,78;13,26;23,63;28,18;21,07;38,39;31,03;50,22;46,54
+66;"GE";"M";39;"PI";"S";"TP";13;26,58;20,09;39,73;40,31;1,09;37,23;42,04;24,67;53,07;27,56;55,98;44,84
+67;"GE";"H";44;"PC";"O";"TP";19;-4,76;30,51;50,48;42,07;47,94;38,38;10,31;19,17;27,63;32,43;39,58;35,67
+68;"GE";"M";61;"S";"S";"TP";10;19,29;29,9;29,6;28,3;46,2;34,55;44,44;30,35;36,59;50,02;54,85;36,58
+69;"GE";"H";30;"PI";"S";"TP";8;20,88;50,76;36,92;36,73;24,27;36,45;12,69;36,55;37,62;36,82;30,56;36,24
+70;"GE";"M";50;"PI";"S";"OT";19;-0,43;29,62;20,43;27,45;31,53;30,5;9,14;11,79;35,44;33,74;25,26;40,94
diff --git a/entregables/ent4/data_paula.csv b/entregables/ent4/data_paula.csv
new file mode 100644
index 0000000..0dec560
--- /dev/null
+++ b/entregables/ent4/data_paula.csv
@@ -0,0 +1,71 @@
+"ID";"Grupo";"Sexo";"Edad";"NivEstud";"EstCiv";"Diag";"AnEvol";"VelocProc_B";"AtenVig_B";"MemorTrab_B";"AprenVerb_B";"AprenVis_B";"RazonRes_B";"VelocProc_P";"AtenVig_P";"MemorTrab_P";"AprenVerb_P";"AprenVis_P";"RazonRes_P"
+1;"GC";"H";54;"S";"S";"TP";22;50,35;35,87;18,87;34,48;46,37;21,24;18,11;7,94;13,07;39,12;51,03;33,8
+2;"GC";"H";46;"PC";"O";"OT";9;32,07;9,04;45,31;38,62;33,96;55,68;24,86;38,08;44,68;36,79;50,06;37,1
+3;"GC";"H";56;"PI";"S";"TP";7;34,79;21,26;18,66;59,24;19,31;34,61;31,7;57,44;30,93;42,06;49,71;29,19
+4;"GC";"H";51;"PC";"S";"TP";21;25,56;20,63;17,31;61,45;34,8;37,38;20,77;32,01;30,01;31,98;49,58;36,88
+5;"GC";"M";40;"PC";"O";"TP";12;36,82;28,13;48,44;45,96;30,14;27;20,86;32,32;31,38;38,95;40,19;35,14
+6;"GC";"H";46;"PC";"O";"OT";26;27,53;3,21;25,29;20,46;40,13;51,65;16,86;30,95;29,78;28,65;20,19;30,04
+7;"GC";"H";47;"PC";"O";"TP";19;24,31;30,94;30,8;38,37;26,67;45,23;13,52;18,98;24,24;33,22;41,72;23,15
+8;"GC";"H";66;"PC";"O";"TP";26;21,77;35,97;32,02;46,82;30,42;26,97;35,37;26,21;-0,92;42,77;24,02;32,72
+9;"GC";"M";54;"S";"S";"OT";4;41,16;25,84;11,08;17,64;42,73;26,7;22,07;15,55;29,21;38,5;30,15;38,29
+10;"GC";"H";30;"PC";"O";"OT";14;31,65;22,77;26,53;34,18;17,97;37,04;36,56;43,81;29,2;35,9;34,58;41,31
+11;"GC";"M";55;"PI";"S";"OT";25;18,5;33,33;21,54;38,54;36,5;26,41;12,2;27,4;32,07;25,6;39,87;47,09
+12;"GC";"M";53;"PC";"S";"OT";12;20,04;22,43;44,08;7,68;32,74;38,91;16,49;16,86;33,57;40,13;37,36;32,03
+13;"GC";"M";28;"PC";"S";"TP";14;40,68;31,65;18,18;17,46;24,17;37,19;27,03;33,13;23,19;33,66;15,22;23,58
+14;"GC";"H";48;"PC";"S";"TP";22;33,16;18,64;37,8;42,37;39,34;28,13;17,15;20,25;37,92;34,34;51,5;28,62
+15;"GC";"M";51;"PI";"O";"TP";32;8,04;26,07;22,53;35,3;42,5;28,43;21,68;9,74;30,08;45,68;34,8;40,8
+16;"GC";"H";32;"S";"O";"OT";26;12,1;27,47;26,64;41,46;44,45;26,28;23,18;24,46;39,66;28,41;29,88;39,48
+17;"GC";"M";42;"S";"S";"TP";18;18,15;27,5;35,6;34,81;29,16;26,84;16,63;17,54;15,47;30,91;36,4;23,06
+18;"GC";"H";34;"PC";"S";"OT";5;-3,42;33,64;31,06;34,47;44,85;33,01;40,39;26,18;26;42,36;10,57;27,75
+19;"GC";"H";43;"PC";"S";"TP";20;19,77;32,8;22,64;39,22;50,81;43,46;15,07;21,02;2,65;38,16;56,98;41,12
+20;"GC";"M";54;"PC";"S";"OT";-2;32;32,2;41,56;37,9;32,77;19,82;25,07;32,78;39,14;40,43;5,71;37,89
+21;"GC";"M";44;"PI";"S";"OT";27;40,74;20,77;54,5;44,23;34,02;34,56;26,66;38,54;16;29,91;49;45,28
+22;"GC";"H";61;"S";"S";"TP";10;35,72;27,42;40,35;36,64;50,78;23,2;16,86;26,16;26,87;33,64;39,81;41,68
+23;"GC";"H";44;"S";"S";"TP";16;20,09;25,48;25,92;32,87;14,73;19,22;18,56;23,04;21,83;46,83;36,49;41,44
+24;"GC";"M";51;"PI";"S";"TP";24;51,04;16,14;17,66;45,08;58,64;45,13;19,4;36,73;22,67;32,52;43,14;19,23
+25;"GC";"H";42;"PI";"S";"OT";3;13,22;32,03;6,76;50,97;23,59;25,41;28,93;38,41;31,25;42,66;36,19;35,58
+26;"GC";"H";53;"PC";"O";"TP";11;6,58;22,93;33,03;41,92;24,73;28,53;29,16;22,19;18,01;35,56;15,16;23,49
+27;"GC";"M";44;"PI";"S";"TP";13;26,79;10,06;30,81;51,5;31,18;24,87;22,43;19,38;40,93;35,46;29,02;37,45
+28;"GC";"H";38;"PI";"S";"OT";30;22,21;27,55;30,03;53,73;55,67;45,74;21,27;33,55;19,71;29,14;32,43;34,06
+29;"GC";"M";34;"PI";"S";"OT";10;30,9;14,9;36,35;41,88;49,26;29,36;25,82;34,04;38;28,76;39,98;22,52
+30;"GC";"H";47;"S";"O";"OT";14;30,07;23,77;30,21;45,55;31,59;33,1;31,97;31,87;47,56;35,3;4,7;38,53
+31;"GC";"H";46;"PC";"S";"TP";24;26,22;19,88;27,78;41,13;30,89;35,83;27,59;31,75;34,01;48,66;39,3;33,53
+32;"GC";"M";42;"PI";"S";"TP";34;30,28;19,31;64,48;23,22;35,64;49,51;14,92;15,41;34,7;34,32;52,86;27,95
+33;"GC";"H";54;"PC";"O";"TP";10;30,87;27,15;34,31;30,44;42,43;28,01;32,62;32,92;28,43;27,89;45,64;37,02
+34;"GC";"H";46;"PI";"S";"TP";26;24,43;26,16;37,69;48;26,24;36,66;13,16;35,71;27,99;40,46;33,33;43,08
+35;"GC";"H";49;"PC";"S";"TP";14;20,94;35,41;21,57;33,95;30,45;24,94;13,66;9,35;41,38;29,52;19,77;33,23
+36;"GE";"H";31;"PC";"O";"TP";-3;10,45;26,43;36,13;33,04;57,27;43,95;41,14;17,31;24,11;47,16;53,78;49,71
+37;"GE";"M";42;"PI";"S";"TP";24;15,63;21,99;23,68;31,55;46,06;34,76;16,49;20,8;46,52;33,13;58,78;44,33
+38;"GE";"H";77;"S";"S";"OT";14;10,9;34,55;37,4;36,95;19,58;43,39;22,07;30,88;36,44;48,65;58,52;37,09
+39;"GE";"H";47;"PC";"S";"TP";8;22,73;7,36;43,18;33,47;55,51;38,52;4,9;24,56;36,04;45,85;21,15;42,21
+40;"GE";"M";60;"S";"S";"TP";16;28,03;20,45;30,03;34,4;19,16;30,01;21,36;18,96;10,32;46,27;72,21;46,02
+41;"GE";"M";59;"PI";"S";"TP";3;19,33;21,46;31,48;39,22;35,69;27,59;31,89;9,03;27,92;37,52;20,63;40,97
+42;"GE";"H";62;"PC";"O";"TP";30;26,81;2,99;45,97;46,47;40,92;37,13;18,18;24,53;41,63;44,1;44,62;35,13
+43;"GE";"H";38;"PC";"O";"TP";19;17,3;35,32;25,64;40,08;47,4;20,15;11,11;25,43;32,13;30,85;39,75;38,88
+44;"GE";"M";35;"PC";"S";"TP";0;14,77;30,85;25,05;30,1;52,67;30,81;17,71;5,08;48,53;41,56;38,41;43,41
+45;"GE";"M";37;"PI";"O";"TP";18;25,13;31,72;28,98;43,12;31,15;32,07;7,76;12,3;31,55;42,41;42,05;41,81
+46;"GE";"H";45;"PI";"O";"TP";13;25,25;47,29;14,69;38,73;49,52;30,57;9,16;13,37;34,47;39,07;41,4;31,46
+47;"GE";"H";57;"PC";"O";"TP";-4;27,24;12,47;20,4;31,78;39,26;36,17;3,55;20,67;37,87;35,18;37,72;43,41
+48;"GE";"M";45;"S";"S";"TP";29;26,19;5,01;22,2;28,46;39,51;25,87;23,14;37,79;26,69;49,8;29,74;33,3
+49;"GE";"H";35;"PI";"S";"TP";8;-24,94;8,2;4,09;36,99;55,01;30,29;16,92;23,7;22,86;31;44,79;28,54
+50;"GE";"M";53;"PC";"S";"TP";10;13,09;39,89;27,13;34,66;62,68;35,84;22,02;11,48;28,79;38,29;38,45;31,79
+51;"GE";"H";56;"S";"S";"TP";12;25,04;22,65;49,21;34,78;69,34;40,87;27,02;19,13;30,06;36,95;36,88;32,75
+52;"GE";"H";43;"S";"O";"TP";21;19,28;38,8;16,2;31,51;43,91;37,5;12,3;34,23;53,65;41,79;65;35,98
+53;"GE";"H";62;"PC";"S";"TP";31;8,38;5,65;44,75;33,46;29,64;39,66;18,83;23,09;34,57;42,75;61,51;38,15
+54;"GE";"H";49;"S";"S";"TP";19;27,96;25,41;48,26;34,79;28,11;35,04;8,14;24,44;33,49;40,7;45,72;32,53
+55;"GE";"H";74;"PC";"S";"OT";1;25,76;47,74;10,38;26,62;29,92;31,69;41,59;28,71;23,33;45,84;52,32;24,31
+56;"GE";"M";67;"PC";"S";"TP";13;21,41;13,39;33,4;32,75;40,4;35,82;17,48;20,35;31,74;38,27;46,87;34,68
+57;"GE";"H";64;"S";"S";"TP";17;13,61;21,1;13,48;39,75;25,8;35,46;25,02;19,95;36,09;37,81;52,11;36,9
+58;"GE";"M";57;"S";"S";"TP";21;31,81;1,24;19,09;28,77;47,63;29,62;28,78;24,84;27,19;42,85;16,42;35,96
+59;"GE";"H";44;"PI";"S";"TP";37;14,38;26,33;15,96;45,57;17,95;33,51;22,48;31,24;45,74;27,86;35,59;28,8
+60;"GE";"H";47;"S";"S";"OT";19;24,94;19,18;13,83;34,34;35,74;43,54;10,21;31,38;32,71;35,69;51,64;44,51
+61;"GE";"M";52;"PC";"O";"TP";8;4,4;38,66;15,21;31,8;34,83;41,92;12,29;19,13;29,88;44,6;46,78;23,96
+62;"GE";"H";47;"PC";"O";"TP";23;8,57;23,75;24,49;39,95;63,49;29,99;29,77;15,64;34,56;41,48;36,91;26,09
+63;"GE";"M";51;"PI";"S";"TP";16;31,09;41,48;32,33;30,02;31,59;33,75;42,64;21,55;32,26;22,18;27,6;37,98
+64;"GE";"M";46;"PC";"S";"TP";17;16,03;43,98;27,07;38,69;28,37;37,01;28,08;22,71;45,32;32,1;18,63;51,63
+65;"GE";"M";54;"PC";"O";"OT";12;29,72;22,39;35,89;28,57;58,3;33,99;34,04;22,72;31,36;48,04;46,79;28,64
+66;"GE";"H";66;"PC";"S";"TP";8;41,54;33,41;11,12;36,26;39,3;37,98;31,28;31,52;36,41;34,39;57,5;30,8
+67;"GE";"M";52;"PI";"S";"OT";19;18,56;20,38;22,33;39,3;25,13;39,28;40,07;17,07;42,33;33,98;32,84;41,25
+68;"GE";"H";56;"PI";"S";"OT";22;26,3;37,64;17,26;34,74;49,11;22,27;1,99;18,87;27,48;31,73;12,75;37,38
+69;"GE";"H";41;"S";"S";"TP";22;44,31;42,97;41,48;31,22;-14,67;21,17;34,6;20,16;42,78;44,98;17;48,67
+70;"GE";"H";35;"PC";"O";"TP";27;12,99;34,42;35,55;25,05;19,26;30,99;0,79;32,02;51,37;47;3,6;33,37
diff --git a/entregables/ent4/data_pedro.csv b/entregables/ent4/data_pedro.csv
new file mode 100644
index 0000000..a807b18
--- /dev/null
+++ b/entregables/ent4/data_pedro.csv
@@ -0,0 +1,71 @@
+"ID";"Grupo";"Sexo";"Edad";"NivEstud";"EstCiv";"Diag";"AnEvol";"VelocProc_B";"AtenVig_B";"MemorTrab_B";"AprenVerb_B";"AprenVis_B";"RazonRes_B";"VelocProc_P";"AtenVig_P";"MemorTrab_P";"AprenVerb_P";"AprenVis_P";"RazonRes_P"
+1;"GC";"M";41;"PI";"O";"OT";25;44,39;19,6;20,16;27,36;41,72;25,2;19,09;26,76;27,54;41,88;29,55;25,26
+2;"GC";"M";41;"PC";"S";"TP";24;28,22;17,15;7,17;37,76;42,28;42,56;23,01;28,27;34,79;27,39;47,8;17,76
+3;"GC";"M";49;"S";"S";"TP";21;32,31;26,5;35,11;42,19;48,62;35,74;31,02;31,36;27,4;37,46;39,61;28,18
+4;"GC";"H";66;"S";"S";"TP";27;14,78;25,84;27,62;30,67;20;31,51;32,01;33,5;27,91;21,96;29,84;34,98
+5;"GC";"M";71;"S";"S";"TP";14;43,48;42,45;34,93;46,58;36,23;36,26;26,7;43,9;19,21;29,74;33,79;33,93
+6;"GC";"M";52;"PI";"S";"TP";20;32,63;23,37;44,33;25,86;23,73;38,29;21,28;39,45;35,67;34,8;56,99;37,77
+7;"GC";"H";41;"S";"S";"TP";26;13,55;18,95;40,32;35,47;53,92;30,45;26,53;34,01;29,07;53,88;32,95;14,58
+8;"GC";"H";45;"PI";"O";"TP";22;24,98;19,84;10,41;44,16;22,93;45;37,7;3,51;26,64;43,84;49,65;25,83
+9;"GC";"M";50;"PI";"S";"OT";20;33,45;19,01;40,86;32,58;69,94;26,69;21,48;26,97;6,17;45,1;55,45;40,72
+10;"GC";"H";39;"PI";"O";"TP";13;24,76;23,63;24,96;36,1;20,02;45,23;25,54;29,01;41,9;30,63;21,77;41,29
+11;"GC";"H";63;"PC";"S";"TP";16;7,75;27,13;39,42;29,49;37,35;44,52;28,19;43,31;31,23;50,38;36,04;27,36
+12;"GC";"H";39;"PI";"S";"TP";20;30,63;30,29;18,24;23,18;47,54;21,51;28,97;26,28;28,81;47,55;55,33;32,31
+13;"GC";"M";43;"S";"S";"OT";34;42,89;19,77;31,1;25,46;53,74;51,81;22,77;25,12;16,42;30,71;24,39;35,38
+14;"GC";"M";32;"S";"S";"OT";28;47,33;31,91;21,99;28,07;24,41;23,24;34,88;33,45;42,87;34,07;35,25;24,78
+15;"GC";"H";67;"PI";"S";"TP";9;21,6;18,91;17,96;47,12;29,7;29,06;28,7;25,29;30,54;33,9;51,15;37,88
+16;"GC";"H";47;"PC";"S";"OT";13;15,66;14,68;54,08;33,61;33,72;31,55;17,08;35,76;27,37;42,42;49,29;45,56
+17;"GC";"H";35;"PC";"S";"OT";17;11,17;38,93;20,16;34,34;35,25;44,06;18,65;21,84;16,54;44,91;28,47;30,36
+18;"GC";"H";41;"S";"S";"OT";9;21,43;31,64;18,15;44,48;23,16;38,55;30,46;40,04;16,25;33,67;44,06;22,57
+19;"GC";"M";42;"PC";"O";"OT";18;38,07;13,06;37,47;27,82;12,54;40,09;26,07;51,19;20,65;24,63;31,13;26,1
+20;"GC";"M";35;"PI";"S";"OT";23;19,71;24,94;34,64;33,4;2,01;20,93;22,14;41,25;22,08;32,75;52,62;43,15
+21;"GC";"H";35;"PC";"S";"TP";8;33,09;27,97;25,18;38,27;37,59;23,86;18,49;31,23;24,68;42,08;27,42;40,01
+22;"GC";"M";36;"PI";"S";"TP";28;15,32;19,45;33,65;50,29;15,96;40,36;13,92;28,18;27,81;35,03;39,05;28,16
+23;"GC";"H";54;"S";"S";"TP";28;14,9;28,12;18,1;27,75;52,97;42,23;32,52;30,64;31,79;27,58;16,09;34,91
+24;"GC";"H";50;"S";"S";"TP";2;20,84;32,9;34,45;56,99;40,5;36,06;24,18;20,78;16,13;37,39;19,23;33,16
+25;"GC";"H";29;"PI";"O";"TP";19;26,35;18,67;21,75;33,42;30,16;31,69;35,4;19,93;23,16;32,78;28,9;22,25
+26;"GC";"M";47;"PI";"O";"OT";9;24,32;31,51;33,87;16,33;44,51;35,13;32,35;30,46;12,71;24,34;57,4;35,94
+27;"GC";"H";51;"PC";"S";"TP";9;18,73;17,21;35,46;51,37;40,68;43,1;22,27;40,49;21,42;21,87;7,52;35,82
+28;"GC";"H";55;"PC";"O";"OT";14;17,42;24,61;47,24;52,04;44,72;36,4;33,83;28,04;31,21;31,76;17,4;24,76
+29;"GC";"H";45;"PC";"S";"TP";16;17,22;25,03;7,18;42,56;17,63;22,22;14,66;33,77;27,95;31,81;12,88;28,32
+30;"GC";"H";33;"PC";"O";"TP";9;33,76;22,84;8,3;22,76;45,94;33,05;29,11;43,77;12,96;38,87;38,74;40,18
+31;"GC";"H";53;"S";"S";"TP";17;20,99;25,07;30,61;21,28;14,33;25,31;28,76;38,83;5,25;18,02;33,03;25,2
+32;"GC";"M";60;"PC";"S";"OT";20;27,04;19,72;42,04;30,92;44,15;28,26;17,55;32,61;17,31;23,96;49,59;34,25
+33;"GC";"M";32;"PC";"S";"OT";20;-8,81;32,82;36,36;57,02;55,67;28,65;17,81;36,06;30,52;46,37;5,21;32,06
+34;"GC";"M";35;"PC";"O";"TP";25;21,17;18,29;46,43;40,13;24,39;13,05;16,12;9,93;9,12;24,9;55,37;27,58
+35;"GC";"H";51;"PC";"S";"TP";19;26,28;29,97;28,62;27,99;17,24;46,92;27,5;35,1;28,04;44,76;47,87;39,77
+36;"GE";"H";46;"S";"S";"TP";19;35,81;18,47;34,2;29,14;17,63;18,42;26,13;31,88;35,02;29,49;41,26;44,99
+37;"GE";"H";40;"S";"S";"TP";4;-6,2;28,84;20,06;33,79;13,98;36,6;14,05;14,74;43,78;32,54;68,9;35,36
+38;"GE";"M";50;"S";"O";"TP";29;9,53;38,1;28,52;32,78;28,51;28,35;30,33;30,53;39,9;34,65;44,22;31,27
+39;"GE";"H";53;"PC";"S";"TP";18;6,12;11,52;43,52;28,94;13,42;38,76;31,57;38,24;37,86;32,01;69,5;34,43
+40;"GE";"H";43;"PC";"S";"OT";29;10,65;24,48;19,67;32,92;29,94;35,24;28,54;32,39;30,95;36,28;54,7;52,94
+41;"GE";"H";45;"S";"S";"OT";13;8,74;18,03;34,71;32,95;45,46;36,07;22,87;13,3;35,37;19,21;48,27;42,41
+42;"GE";"H";44;"PI";"O";"OT";7;-1,51;18,86;20,86;43,88;43,33;46,44;12,49;25,03;25,36;52,83;31,9;37,61
+43;"GE";"M";36;"PI";"S";"TP";10;4,79;24,51;16,22;28,74;49,91;42,49;47,63;31,93;10,04;48,22;66,88;45,52
+44;"GE";"H";39;"PI";"O";"TP";15;7,24;18,68;23,92;34,1;33,61;35,33;37,92;43,61;32,08;49,45;25,86;51,87
+45;"GE";"M";30;"PC";"O";"TP";12;-1,63;5,24;36,04;35,85;38,96;21,89;15,73;29,8;40,98;31,66;23,31;49,69
+46;"GE";"H";42;"PC";"S";"TP";20;32,62;50,2;39,83;31,41;-4,56;33,65;35,39;19,27;43,6;46,56;63,98;33,59
+47;"GE";"M";27;"PC";"O";"TP";22;14,2;18,32;32;30,88;45,43;32,1;37,55;14,94;33,28;64,51;34,4;54,81
+48;"GE";"M";40;"S";"S";"TP";2;23,12;26,06;27,03;30,08;45,8;29,1;52,44;30,32;25,68;39,97;39,3;39,73
+49;"GE";"H";31;"PI";"O";"TP";1;11,36;18,57;11,84;33,91;42,16;32,75;49,53;23,83;42,55;49,69;41,47;36,9
+50;"GE";"M";58;"PC";"S";"OT";13;9,96;24,65;30,67;32,13;41,23;31,44;6,36;23,26;44,86;60,13;40,45;40,84
+51;"GE";"M";55;"PC";"O";"TP";5;40;5,41;30,49;43,83;63,01;26,32;19,15;15,91;26,66;30,44;74,14;42,5
+52;"GE";"H";43;"PC";"O";"TP";21;1,58;23,82;34,02;43,66;26,85;33,96;27,9;29,35;37,38;27,5;49,54;35,31
+53;"GE";"H";29;"PC";"S";"TP";20;0,65;20,1;39,65;31,18;35,79;37,41;-9,61;28,98;23,77;43,73;55,57;27,72
+54;"GE";"M";39;"PC";"S";"OT";19;21,57;5,01;19,29;40,23;43,41;28,6;18,68;34,06;22,81;38,33;48,85;44,04
+55;"GE";"H";42;"S";"S";"TP";1;19,35;23,41;26,32;36,92;34,79;31,11;33,53;35,69;46,65;29,44;31,91;38,69
+56;"GE";"H";40;"S";"S";"TP";18;22,11;27,86;29,82;30,04;22,02;44,24;2,69;16;19,89;49,8;41,61;33,45
+57;"GE";"M";44;"S";"S";"TP";20;12,39;25,1;41,53;28,78;25,17;30,57;17,98;22,72;20,59;30,85;45,63;37,84
+58;"GE";"H";33;"S";"S";"TP";15;46,02;18,94;41,6;39,42;24,52;25,87;35,02;23,15;30,59;39,47;32,33;51,01
+59;"GE";"H";67;"S";"O";"TP";27;25,72;12,11;24,47;36,05;51,01;38,08;45,61;17,61;33,67;23,31;34,03;34,39
+60;"GE";"M";36;"S";"S";"TP";16;10,87;38,42;1,72;25,83;66,23;35,48;17,05;28,28;29,12;49,24;60,1;30,03
+61;"GE";"H";36;"S";"O";"TP";-4;13,8;23,16;35,61;30,56;39,86;40,14;16,28;18,65;36,9;20,64;28,03;50,88
+62;"GE";"H";47;"PI";"S";"TP";7;34,96;8,93;30,97;44,79;34,22;39,46;25,31;28,17;36,09;48,37;66,53;38,35
+63;"GE";"H";44;"S";"S";"TP";30;37,12;21,44;38,46;15,15;44,13;36,84;9,06;25,78;21,9;36,11;44,16;39,3
+64;"GE";"H";44;"PI";"S";"OT";18;31,39;14,08;39,38;8,91;2,34;26,36;27,86;32,95;41,37;37,98;33,84;26,81
+65;"GE";"H";57;"PI";"S";"OT";18;5,79;10,86;40,38;23,51;30,97;23,61;14,54;17,03;21,65;50,53;40,01;37,78
+66;"GE";"M";36;"PC";"O";"TP";13;14,02;16,4;2,54;35,19;45,67;32,51;11,84;21,01;26,13;33,36;42,67;40,24
+67;"GE";"M";54;"PC";"S";"OT";18;23,15;22,55;27,71;25,53;48,04;35,15;26,02;15,42;28,46;49,49;20,06;36,76
+68;"GE";"H";51;"S";"O";"TP";13;28,48;20,79;27,52;49,5;48,78;38,37;24,38;14,6;24,54;38,04;8,1;49,49
+69;"GE";"H";31;"PI";"O";"TP";20;21,47;34,3;30,87;31,4;38,65;31,28;22,97;23,2;33,1;35,77;40,36;33,23
+70;"GE";"H";44;"PI";"S";"TP";14;29,23;29,69;37,51;36,57;36,59;23,9;28,49;11,68;29,02;37,61;41,91;26,94
diff --git a/entregables/ent4/ent4.Rmd b/entregables/ent4/ent4.Rmd
new file mode 100644
index 0000000..66d4e92
--- /dev/null
+++ b/entregables/ent4/ent4.Rmd
@@ -0,0 +1,364 @@
+---
+title: "Entregable 4 - Estadística"
+subtitle: "Grau de Matemàtiques, Curs 2020-21"
+author: "Vilanova Martínez, Adrià"
+output: html_document
+---
+
+```{r message=FALSE}
+# Libraries
+library(R.utils)
+
+# Decimal separator (we have to fill in the results with commas :( )
+options(OutDec=",")
+```
+
+## Configuració
+Aquí es pot configurar la pràctica depenent del que es pregunti:
+
+```{r}
+# APARTAT 1
+# Variable preguntes 1, 2 (ex: Edad, AnEvol, ...)
+var12 = 'AnEvol'
+# Variable preguntes 3, 4 (ex: Sexo, NivEstud, Diag, EstCiv, ...)
+var34 = 'NivEstud'
+
+# APARTATS 2, 3 i 4
+# Variable per les preguntes a partir de la 5 sense sufix (ex: VelocProc,
+# AtenVig, MemorTrab, AprenVerb, AprenVis, RazonRes, ...)
+var = 'RazonRes'
+
+# Nivell de significació (és el mateix per tothom)
+alpha = 0.05
+
+dd = read.csv2("data.csv")
+```
+
+Altres dades:
+
+```
+# == PAULA ==
+# APARTAT 1
+# Variable preguntes 1, 2 (ex: Edad, AnEvol, ...)
+var12 = 'AnEvol'
+# Variable preguntes 3, 4 (ex: Sexo, NivEstud, Diag, EstCiv, ...)
+var34 = 'EstCiv'
+
+# APARTATS 2, 3 i 4
+# Variable per les preguntes a partir de la 5 sense sufix (ex: VelocProc,
+# AtenVig, MemorTrab, AprenVerb, AprenVis, RazonRes, ...)
+var = 'MemorTrab'
+
+# Nivell de significació (és el mateix per tothom)
+alpha = 0.05
+
+dd = read.csv2("data_paula.csv")
+```
+
+```
+# == PEDRO ==
+# APARTAT 1
+# Variable preguntes 1, 2 (ex: Edad, AnEvol, ...)
+var12 = 'AnEvol'
+# Variable preguntes 3, 4 (ex: Sexo, NivEstud, Diag, EstCiv, ...)
+var34 = 'EstCiv'
+
+# APARTATS 2, 3 i 4
+# Variable per les preguntes a partir de la 5 sense sufix (ex: VelocProc,
+# AtenVig, MemorTrab, AprenVerb, AprenVis, RazonRes, ...)
+var = 'AtenVig'
+
+# Nivell de significació (és el mateix per tothom)
+alpha = 0.05
+
+dd = read.csv2("data_pedro.csv")
+```
+
+## Introducció
+
+```{r}
+dd$VelocProc_D = dd$VelocProc_P - dd$VelocProc_B
+dd$AtenVig_D = dd$AtenVig_P - dd$AtenVig_B
+dd$MemorTrab_D = dd$MemorTrab_P - dd$MemorTrab_B
+dd$AprenVerb_D = dd$AprenVerb_P - dd$AprenVerb_B
+dd$AprenVis_D = dd$AprenVis_P - dd$AprenVis_B
+dd$RazonRes_D = dd$RazonRes_P - dd$RazonRes_B
+
+head(dd, n=3)
+
+gc = dd[dd$Grupo == 'GC',]
+ge = dd[dd$Grupo == 'GE',]
+gc_n = nrow(gc)
+ge_n = nrow(ge)
+
+var_b = paste(var, '_B', sep='')
+var_p = paste(var, '_P', sep='')
+var_d = paste(var, '_D', sep='')
+```
+
+
+## Apartat 1
+
+### Pregunta 1
+Estadístic de la prova per comparar <ch>`r var12`</ch> en els dos grups:
+
+```{r}
+p1_2_var_test = var.test(gc[[var12]], ge[[var12]], ratio=1,
+                         alternative='two.sided', conf.level=1 - alpha)
+p1_2_var_test
+
+p1_2_same_var = (p1_2_var_test$p.value >= alpha)
+if (p1_2_same_var) {
+  printf("Suposarem que la variància de %s en GC i GE és la mateixa.", var12)
+} else {
+  printf("Suposarem que la variància de %s en GC i GE NO és la mateixa.", var12)
+}
+
+p1_2_t_test = t.test(gc[[var12]], ge[[var12]], alternative='two.sided',
+                     paired=FALSE, var.equal=p1_2_same_var, conf.level=1 - alpha)
+p1_2_t_test
+
+p1_est = p1_2_t_test$statistic
+p1_est
+```
+
+### Pregunta 2
+P-valor de la prova per comparar <ch>`r var12`</ch> en els dos grups:
+```{r}
+p2_pvalue = p1_2_t_test$p.value
+p2_pvalue
+```
+
+### Pregunta 3
+Estadístic de la prova per comparar <ch>`r var34`</ch> en els dos grups:
+
+```{r}
+p3_4_table = table(dd$Grupo, dd[[var34]])
+p3_4_table
+
+p3_4_chisq_test = chisq.test(p3_4_table, correct=FALSE)
+p3_4_chisq_test
+
+p3_est = p3_4_chisq_test$statistic
+p3_est
+```
+
+### Pregunta 4
+P-valor de la prova per comparar <ch>`r var34`</ch> en els dos grups:
+```{r}
+
+p4_pvalue = p3_4_chisq_test$p.value
+p4_pvalue
+```
+
+## Apartat 2
+
+### Pregunta 5
+Estadístic de la prova per comparar el T-Score de <ch>`r var`</ch> Basal dels dos grups:
+
+```{r}
+p56_var = paste(var, '_B', sep='')
+
+p56_var_test = var.test(gc[[p56_var]], ge[[p56_var]], ratio=1,
+                        alternative='two.sided', conf.level=1 - alpha)
+p56_var_test
+
+p56_same_var = (p56_var_test$p.value >= alpha)
+if (p56_same_var) {
+  printf("Suposarem que la variància de %s en GC i GE és la mateixa.", p56_var)
+} else {
+  printf("Suposarem que la variància de %s en GC i GE NO és la mateixa.", p56_var)
+}
+
+p56_t_test = t.test(gc[[p56_var]], ge[[p56_var]], alternative='two.sided',
+                    paired=FALSE, var.equal=p56_same_var, conf.level=1 - alpha)
+p56_t_test
+
+p5_est = p56_t_test$statistic
+p5_est
+```
+
+### Pregunta 6
+P-valor de la prova per comparar el T-Score de <ch>`r var`</ch> Basal dels dos grups:
+
+```{r}
+p6_pvalue = p56_t_test$p.value
+p6_pvalue
+```
+
+### Pregunta 7
+Estadístic de la prova per comparar el T-Score de <ch>`r var`</ch> Post-Intervenció dels dos grups:
+
+```{r}
+p78_var = paste(var, '_P', sep='')
+
+p78_var_test = var.test(gc[[p78_var]], ge[[p78_var]], ratio=1,
+                        alternative='two.sided', conf.level=1 - alpha)
+p78_var_test
+
+p78_same_var = (p78_var_test$p.value >= alpha)
+if (p78_same_var) {
+  printf("Suposarem que la variància de %s en GC i GE és la mateixa.", p78_var)
+} else {
+  printf("Suposarem que la variància de %s en GC i GE NO és la mateixa.", p78_var)
+}
+
+p78_t_test = t.test(gc[[p78_var]], ge[[p78_var]], alternative='two.sided',
+                    paired=FALSE, var.equal=p78_same_var, conf.level=1 - alpha)
+p78_t_test
+
+p7_est = p78_t_test$statistic
+p7_est
+```
+
+### Pregunta 8
+P-valor de la prova per comparar el T-Score de <ch>`r var`</ch> Post-Intervenció dels dos grups:
+
+```{r}
+p8_pvalue = p78_t_test$p.value
+p8_pvalue
+```
+
+## Apartat 3
+
+L'interval de confiança pel test t-Student per observacions aparellades és:
+$$IC_{1 - \alpha} (\mu) = \bar{D} \pm t_{n-1, 1-\alpha/2} \frac{S_D}{\sqrt{n}}$$
+
+### Pregunta 9
+Límit inferior de l'interval de confiança del `r 100*(1 - alpha)`% per a la diferència del T-Score de <ch>`r var`</ch> en el Grup Control.
+
+```{r}
+p9_low = mean(gc[[var_d]]) - qt(1 - alpha/2, df=gc_n - 1)*sd(gc[[var_d]])/sqrt(gc_n)
+p9_low
+```
+
+### Pregunta 10
+Límit superior de l'interval de confiança del `r 100*(1 - alpha)`% per a la diferència del T-Score de <ch>`r var`</ch> en el Grup Control.
+
+```{r}
+p10_upp = mean(gc[[var_d]]) + qt(1 - alpha/2, df=gc_n - 1)*sd(gc[[var_d]])/sqrt(gc_n)
+p10_upp
+```
+
+### Pregunta 11
+Límit inferior de l'interval de confiança del `r 100*(1 - alpha)`% per a la diferència del T-Score de <ch>`r var`</ch> en el Grup Experimental.
+
+```{r}
+p11_low = mean(ge[[var_d]]) - qt(1 - alpha/2, df=ge_n - 1)*sd(ge[[var_d]])/sqrt(ge_n)
+p11_low
+```
+
+### Pregunta 12
+Límit superior de l'interval de confiança del `r 100*(1 - alpha)`% per a la diferència del T-Score de <ch>`r var`</ch> en el Grup Experimental.
+
+```{r}
+p12_upp = mean(ge[[var_d]]) + qt(1 - alpha/2, df=ge_n - 1)*sd(ge[[var_d]])/sqrt(ge_n)
+p12_upp
+```
+
+## Apartat 4
+
+### Pregunta 13
+Estadístic de la prova per comparar el T-Score de <ch>`r var`</ch> Basal vs. Post-Intervenció en el grup Experimental:
+
+```{r}
+p13_14_t_test = t.test(ge[[var_p]], ge[[var_b]], alternative='two.sided',
+                       paired=TRUE, conf.level=1 - alpha)
+p13_14_t_test
+
+p13_est = p13_14_t_test$statistic
+p13_est
+```
+
+
+### Pregunta 14
+P-valor de la prova per comparar el T-Score de <ch>`r var`</ch> Basal vs. Post-Intervenció en el grup Experimental:
+
+```{r}
+p14_pvalue = p13_14_t_test$p.value
+p14_pvalue
+```
+
+### Pregunta 15
+Estadístic de la prova per comparar el T-Score de <ch>`r var`</ch> Basal vs. Post-Intervenció en el grup Control:
+
+```{r}
+p15_16_t_test = t.test(gc[[var_p]], gc[[var_b]], alternative='two.sided',
+                       paired=TRUE, conf.level=1 - alpha)
+p15_16_t_test
+
+p15_est = p15_16_t_test$statistic
+p15_est
+```
+
+### Pregunta 16
+P-valor de la prova per comparar el T-Score de <ch>`r var`</ch> Basal vs. Post-Intervenció en el grup Control:
+
+```{r}
+p16_pvalue = p15_16_t_test$p.value
+p16_pvalue
+```
+
+## Apartat 5
+
+### Pregunta 17
+Estadístic de la prova per comparar la diferència del T-Score de <ch>`r var`</ch> (Post-Intervenció - Basal) en els dos grups:
+
+```{r}
+p17_18_var_test = var.test(gc[[var_d]], ge[[var_d]], ratio=1,
+                           alternative='two.sided', conf.level=1 - alpha)
+p17_18_var_test
+
+p17_18_same_var = (p17_18_var_test$p.value >= alpha)
+if (p17_18_same_var) {
+  printf("Suposarem que la variància de la diferència P-B de %s en GC i GE és la mateixa.", var12)
+} else {
+  printf("Suposarem que la variància de la diferència P-B de %s en GC i GE NO és la mateixa.", var12)
+}
+
+p17_18_t_test = t.test(gc[[var_d]], ge[[var_d]], alternative='two.sided',
+                       paired=FALSE, var.equal=p17_18_same_var, conf.level=1 - alpha)
+p17_18_t_test
+
+p17_est = p17_18_t_test$statistic
+p17_est
+```
+
+### Pregunta 18
+P-valor de la prova per comparar la diferència del T-Score de <ch>`r var`</ch> (Post-Intervenció - Basal) en els dos grups:
+
+```{r}
+p18_pvalue = p17_18_t_test$p.value
+p18_pvalue
+```
+
+
+## Resum
+1. `r p1_est`
+2. `r p2_pvalue`
+3. `r p3_est`
+4. `r p4_pvalue`
+5. `r p5_est`
+6. `r p6_pvalue`
+7. `r p7_est`
+8. `r p8_pvalue`
+9. `r p9_low`
+10. `r p10_upp`
+11. `r p11_low`
+12. `r p12_upp`
+13. `r p13_est`
+14. `r p14_pvalue`
+15. `r p15_est`
+16. `r p16_pvalue`
+17. `r p17_est`
+18. `r p18_pvalue`
+
+<!-- Custom styles -->
+<style>
+/* ch element (|ch| stands for check) */
+ch {
+  background: #ffe4ff;
+  font-weight: bold;
+  color: red;
+}
+</style>
\ No newline at end of file
