-
Notifications
You must be signed in to change notification settings - Fork 0
/
001-Introduccion.qmd
220 lines (128 loc) · 10.4 KB
/
001-Introduccion.qmd
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
# Introducción: las bases de un análisis de datos con **R** {#introduccion}
## ¿Qué vas a apernder?
- Los conceptos básicos para llevar a cabo un análisis en ciencia de datos.
- Un *overview* de las herramientas más importantes del
software estadístico **R** y su potencial no solo para el análisis de datos.
- Una de las metodologías más utilizada en ciencia de datos: la metodología *Cross Industry Standard Process for Data Mining* (CRISP-DM por sus siglas en inglés).
- Cómo desarrollar un caso de uso en ciencia de datos aplicando la metodologías CRISP-DM a un problema actual de importante repercusión económica, sanitaria y social, el control de la calidad del aire.
## ¿Qué no vas a aprender?
- Programación en **R**
- Escritura en LaTeX.
- Contenidos teóricos de estadística y ciencia de datos.
## ¿Qué es la ciencia de datos?
La ciencia de datos es una disciplina emergente que ha sido etiquetada como la profesión más sexy del siglo XXI [@davenport2012data]. Mediante la combinación de modelos matemáticos y estadísticos, la programación computacional y el conocimiento del negocio o área de aplicación (véase @fig-ciencia-datos), la ciencia de datos obtiene el máximo valor de los datos para apoyar los procesos de toma de decisiones. Es decir, transforma los datos en información y la información en conocimiento.
```{r , echo=FALSE, out.width='70%', fig.align='center', fig.cap='Diagrama de Venn de la ciencia de datos'}
#| label: fig-ciencia-datos
knitr::include_graphics(here::here("img/01-ciencia-datos.png"))
```
## ¿Cuáles son las herramientas básicas de **R** para ciencia de datos?
**R** es una caja de herramientas en el sentido más amplio (tal y com ilustra la @fig-caja-herramientas), pues permite
llevar a cabo muchas aplicaciones y muy diferentes. Entre ellas, para
hacer una idea al lector, con **R** es posible: sumar o restar, ejecutar
modelos ya programados, desarrollar funciones nuevas, dibujar datos y
resultados de forma estática y/o interactiva, crear informes y fomentar
la reproducibilidad, diseñar y publicar blogs, páginas webs, dashboards,
cuadros de mando, etc...
```{r }
#| label: fig-caja-herramientas
#| fig-cap: La caja de herramientas de R
#| echo: false
#| fig-align: center
#| fig-width: 7
knitr::include_graphics(here::here("img/herramientas.jpg"))
```
**R** tiene tres grandes pilares que
son:
1. [**Rstudio**]{style="color:red"}: un entorno de desarrollo integrado (IDE) para R (y
Python) dedicado a la computación estadística y gráficos. Incluye
([Rstudio](https://www.rstudio.com/)):
1. una consola,
2. un editor sintaxis en color que apoya la ejecución de código,
3. un entrono para las variables y
4. un conjunto de utilidades.
2. [**Tidyverse**:]{style="color:red"} una colección de paquetes coherentes, que
comparten gramática, filosofía y estructura y están diseñados para
realizar juntos como una canalización completa (*pipeline*). Todos
se basan en la idea de **tidy data** propuesta por Hadley Wickham
(@Wickham2014) y pueden instalarse con un único comando en **R**:
```{r}
#| eval: false
install.packages("tidyverse")
```
Los paquetes que forman parte del `tidyverse` son:
- **`readr`**: importación de datos.
- **`dplyr`**: manipulación de datos.
- **`tidyr`**: ordenación de datos.
- **`ggplot2`** visualización de datos.
- **`purrr`**: programación.
- **`tibble`**: para `tibbles`, un nuevo formato de `data frames`.
- **`stringr`**: para caracteres.
- **`forcats`**: para factores.
3. [**Quarto/Rmarkdown**:]{style="color:red"} un marco de escritura para ciencia de datos, que
combina código, resultados y comentarios. Los documentos de Quarto (\*.qmd) y R
Markdown (\*.Rmd) son completamente reproducibles y soportan docenas
de formatos de salida tales como PDFs, archivos de Word,
presentaciones, artículos científicos,... Materiral de recomendable
lectura [R Markdown Cookbook](https://rmarkdown.rstudio.com/),
[Rmarkdown](https://bookdown.org/yihui/rmarkdown-cookbook/) y el nuevo formato multiplataforma integrado de [Quarto](https://quarto.org/)
::: {.callout-note}
Libro de referencia obligatoria: [**R for Data Science (en español)**](https://es.r4ds.hadley.nz/index.html)
:::
## Importancia de una metodología en ciencia de datos {#fundamentos}
La **metodología** en la ciencia de datos proporciona un camino para encontrar soluciones a un problema específico. Este es un proceso cíclico que sufre un comportamiento crítico y que guía a los analistas de negocios y científicos de datos a actuar en consecuencia.
**CRISP-DM** \index{crisp-dm} es un modelo estándar ampliamente utilizado en la minería de datos que proporciona un enfoque estructurado para llevar a cabo proyectos de análisis de datos (@wirth2000crisp). Este modelo se compone de seis fases interconectadas, que abarcan desde la comprensión del negocio hasta la implementación de los resultados del análisis. Las fases de CRISP-DM son:
1. Entendimiento del negocio.
2. Comprensión de los datos.
3. Preparación de los datos.
4. Modelado.
5. Evaluación.
6. Despliegue.
```{r lifecycle, echo=FALSE, out.width='100%', fig.cap= 'Ciclo de vida de un proceso de ciencia de datos' }
knitr::include_graphics(here::here("img/02-Data-Science-LifeCycle.png"))
```
## Caso de estudio: la calidad del aire en la ciudad de Madrid
La contaminación del aire exterior es uno de los principales problemas que afectan a la salud humana en las zonas urbanas de todo el mundo (@sanchis2022extended). Aunque las emisiones de la mayoría de los contaminantes del aire han disminuido sustancialmente en las últimas décadas, sus concentraciones aún superan los límites legales en la mayoría de los países, lo que indica que el control de la contaminación del aire sigue siendo un desafío para las sociedades modernas. Cada año, más de 4,2 millones de personas sufren una muerte prematura a causa de la contaminación del aire exterior (OMS, 2016). Los principales culpables son el ozono (O3), el dióxido de nitrógeno (NOx) y, sobre todo, las partículas finas o material particulado (PM) con un diámetro de 10 micrómetros o menos (PM10).
Por otra parte, Madrid es la tercera ciudad más poblada de la Unión Europea después de Londres y Berlín y cuenta con una gran área metropolitana periférica con más de cinco millones de habitantes. Su potente actividad económica, incluso en tiempos de pandemia de la Covid-19, se traduce en niveles de PM10 y NO2 superiores a los deseados a causa del transporte —en concreto, del tráfico rodado— y de la actividad industrial, que son las principales fuentes de emisión de PM10 (véase @montero2018functional y @montero2021local).
En este contexto, el análisis de datos desempeña un papel crucial en la comprensión de la contaminación del aire y sus efectos en la salud humana y el medio ambiente. La disponibilidad de datos geoespaciales permite identificar patrones espaciales, detectar áreas de alta contaminación y evaluar el impacto de las emisiones en diferentes regiones. Resulta muy importante la fácil accesibilidad de los datos para la democratización de la información. Un ejemplo de ello es la página de [Datos abiertos del Gobierno de España](https://datos.gob.es/es/). Gracias a los datos públicos y el análisis adecuado se facilita la toma de decisiones informadas para abordar y mitigar los problemas de contaminación del aire.
La mejor forma para comprender y entender nuevos desarrollos es viendo su utilidad
a través de un caso de uso, y en este manual se ha escogido un tema tan importante
como es la contaminación del aire en la ciudad de Madrid. Ello quedó de manifiesto los días 14-16 de marzo de 2022 cuando una gran calima cubrió no sólo a Madrid (@fig-cal-aire)
sino a España entera tiñiendo el país de polvo rojo.
```{r , echo=FALSE, out.width='60%', fig.align='center', fig.cap='Calidad del aire 15-Marzo-2022'}
#| label: fig-cal-aire
knitr::include_graphics(here::here("img/01-calima_la_razon.png"))
```
Además, el Ayuntamiento de Madrid dispone datos abiertos proporcionados a traves del[Portal de datos abiertos del Ayuntamiento de Madrid](https://datos.madrid.es/portal/site/egob/menuitem.c05c1f754a33a9fbe4b2e4b284f1a5a0/?vgnextoid=f3c0f7d512273410VgnVCM2000000c205a0aRCRD&vgnextchannel=374512b9ace9f310VgnVCM100000171f5a0aRCRD&vgnextfmt=default) que permiten su análisis sin coste alguno.
Concretamente, a través del Sistema Integral de la Calidad del Aire del Ayuntamiento de Madrid (véase @fig-ayto-madrid), se pueden descargar los datos de los contaminantes registrados en
las estaciones de monitoreo de la ciudad desde 2001 en distintos formatos.
```{r , echo=FALSE, out.width='60%', fig.align='center', fig.cap='Web Ayuntamiento de Madrid'}
#| label: fig-ayto-madrid
knitr::include_graphics(here::here("img/01-datos_ayto_madrid.png"))
```
Todo hace que quede más que justificado el interés del caso de estudio que
se presenta.
### Los datos
De acuerdo con @wickham2016r, el cual es considerada una referencia clave en el
la ciencia de datos (Data Science with R), las herramientas necesarias para un proyecto típico de ciencia de datos sigue el siguiente esquema: importar, ordenar,
transformar, visualizar, modelar y comunicar (véase @fig-proceso-cd)
```{r , echo=FALSE}
#| label: fig-proceso-cd
#| fig-cap: "Ciclo de vida de la ciencia de datos"
#| out-width: '60%'
knitr::include_graphics(here::here("img/proceso-cd.png"))
```
:::{.callout-tip}
Partir con la ingesta y orden de los datos no sería optimo para llevar a cabo
el objetivo de este manual, pues el 80% del tiempo es un proceso rutinario y aburrido y el 20% restante es extraño y frustrante.
:::
En el caso que nos ocupa, se recurre al repositorio de
Github michal0091/aire_madrid de Kinel (2022a, 2022b) que trata los datos brutos
de calidad del aire del Ayuntamiento de Madrid, los organiza y los codifica,
facilitando así su uso (@fig-foto-michal). La salida del conjunto de datos
dt_daily_mean_2011.RDS que aquí se proporciona será la entrada
para el análisis que se presenta.
(TODO) descripción breve de lo que contienen estas carpetas, datos procesasdos, sin procear, diccionarios.
```{r echo=FALSE, out.width='60%', fig.align='center', fig.cap='Repositorio Github con el código'}
#| label: fig-foto-michal
knitr::include_graphics(here::here("img/01-git_aire_madrid.png"))
```