Skip to content

Commit 4f42448

Browse files
committed
update
1 parent 23fe89a commit 4f42448

File tree

2 files changed

+50
-22
lines changed

2 files changed

+50
-22
lines changed

docs/labs/lab_10.ipynb

Lines changed: 49 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -5,27 +5,40 @@
55
"id": "f4324d27",
66
"metadata": {},
77
"source": [
8-
"<a href=\"https://colab.research.google.com/github/fralfaro/MAT281_2022/blob/main/labs/lab_10/lab_10.ipynb\" target=\"_parent\"><img src=\"https://colab.research.google.com/assets/colab-badge.svg\" alt=\"Open In Colab\"/></a>\n",
8+
"<a href=\"https://colab.research.google.com/github/fralfaro/MAT281/blob/main/docs/labs/lab_10.ipynb\" target=\"_parent\"><img src=\"https://colab.research.google.com/assets/colab-badge.svg\" alt=\"Open In Colab\"/></a>\n",
99
"\n",
1010
"\n",
1111
"# MAT281 - Laboratorio N°10\n",
1212
"\n",
13-
"<a id='p1'></a>\n",
14-
"## I.- Problema 01\n",
13+
"**Objetivo**: Analizar y modelar series temporales de datos delictivos en Montreal, aplicando métodos estadísticos y de aprendizaje automático para la predicción.\n",
1514
"\n",
16-
"Lista de actos delictivos registrados por el Service de police de la Ville de Montréal (SPVM).\n",
15+
"> **Nota**: Puede ayudarse de algún asistente virtual como **ChatGPT, Gemini** u otros, así como del autocompletado de **Google Colab**, para avanzar en este laboratorio debido a su extensión.\n"
16+
]
17+
},
18+
{
19+
"cell_type": "markdown",
20+
"id": "b4b1c4d4",
21+
"metadata": {},
22+
"source": [
23+
"### Conjunto de datos\n",
1724
"\n",
1825
"\n",
19-
"<img src=\"http://henriquecapriles.com/wp-content/uploads/2017/02/femina_detenida-1080x675.jpg\" width=\"480\" height=\"360\" align=\"center\"/>\n",
2026
"\n",
21-
"El conjunto de datos en estudio `interventionscitoyendo.csv` corresponde a todos los delitos entre 2015 y agosto de 2020en Montreal. Cada delito está asociado en grandes categorías, y hay información sobre la ubicación, el momento del día, etc.\n",
27+
"<img src=\"https://svgsilh.com/svg/3350822.svg\" width=\"350\" align=\"center\"/>\n",
2228
"\n",
23-
"> **Nota**: Para más información seguir el siguiente el [link](https://donnees.montreal.ca/ville-de-montreal/actes-criminels)."
29+
"\n",
30+
"El conjunto de datos **`interventionscitoyendo.csv`** proviene del *Service de police de la Ville de Montréal* (SPVM) y contiene el registro de todos los **actos delictivos ocurridos en Montreal entre 2015 y agosto de 2020**.\n",
31+
"\n",
32+
"Cada incidente está clasificado en **categorías generales de delito** e incluye información contextual como la **ubicación geográfica**, la **fecha y hora** del suceso, así como otros atributos relevantes para el análisis.\n",
33+
"\n",
34+
"Este dataset resulta especialmente útil para estudios de **series temporales**, ya que permite agrupar los delitos por intervalos de tiempo (días, semanas, meses) y analizar patrones de comportamiento delictual en la ciudad.\n",
35+
"\n",
36+
"> **Nota**: Puede consultarse más información oficial en el [portal de datos abiertos de Montreal](https://donnees.montreal.ca/ville-de-montreal/actes-criminels).\n"
2437
]
2538
},
2639
{
2740
"cell_type": "code",
28-
"execution_count": 1,
41+
"execution_count": 2,
2942
"id": "d7c49bbd",
3043
"metadata": {},
3144
"outputs": [],
@@ -52,7 +65,7 @@
5265
},
5366
{
5467
"cell_type": "code",
55-
"execution_count": 2,
68+
"execution_count": 3,
5669
"id": "b6a6ae12",
5770
"metadata": {},
5871
"outputs": [],
@@ -205,7 +218,7 @@
205218
},
206219
{
207220
"cell_type": "code",
208-
"execution_count": 3,
221+
"execution_count": 6,
209222
"id": "94c2e804",
210223
"metadata": {},
211224
"outputs": [
@@ -316,7 +329,7 @@
316329
"13686 -73.575381 45.562090 "
317330
]
318331
},
319-
"execution_count": 3,
332+
"execution_count": 6,
320333
"metadata": {},
321334
"output_type": "execute_result"
322335
}
@@ -328,7 +341,7 @@
328341
" 'Introduction', 'Méfait','Vol dans / sur véhicule à moteur', 'Vol de véhicule à moteur',\n",
329342
"]\n",
330343
"\n",
331-
"df = pd.read_csv(\"https://raw.githubusercontent.com/fralfaro/MAT281_2022/main/labs/lab_10/data/interventionscitoyendo.csv\", sep=\",\", encoding='latin-1')\n",
344+
"df = pd.read_csv(\"https://raw.githubusercontent.com/fralfaro/MAT281/main/docs/labs/data/interventionscitoyendo.csv\", sep=\",\", encoding='latin-1')\n",
332345
"df.columns = df.columns.str.lower()\n",
333346
"df['date'] = pd.to_datetime(df['date'], format='%Y-%m-%d')\n",
334347
"\n",
@@ -364,9 +377,12 @@
364377
"id": "8c4d30b7",
365378
"metadata": {},
366379
"source": [
367-
"El objetivo de este laboratorio es poder realizar un análisis completo del conjunto de datos en estudio, para eso debe responder las siguientes preguntas:\n",
368380
"\n",
369-
"1. Realizar un gráfico para cada serie temporal $y\\_{si}, i =1,2,3,4$.\n"
381+
"\n",
382+
"El objetivo de este laboratorio es realizar un **análisis integral** del conjunto de datos, aplicando técnicas de visualización y modelado de series temporales. Para ello, se deben abordar las siguientes tareas:\n",
383+
"\n",
384+
"1. **Visualizar las series temporales** \\$y\\_{si}, ; i=1,2,3,4\\$, generando gráficos que permitan identificar patrones, tendencias y estacionalidades.\n",
385+
"\n"
370386
]
371387
},
372388
{
@@ -384,13 +400,16 @@
384400
"id": "cc6afc99",
385401
"metadata": {},
386402
"source": [
387-
"2. Escoger alguna serie temporal $y\\_{si}, i =1,2,3,4$. Luego:\n",
388403
"\n",
389-
"* Realizar un análisis exploratorio de la serie temporal escogida\n",
390-
"* Aplicar el modelo de pronóstico $SARIMA(p,d,q)x(P,D,Q,S)$, probando varias configuraciones de los hiperparámetros. Encuentre la mejor configuración. Concluya.\n",
391-
"* Para el mejor modelo encontrado, verificar si el residuo corresponde a un ruido blanco.\n",
392404
"\n",
393-
"> **Hint**: Tome como `target_date` = '2021-01-01'. Recuerde considerar que su columna de valores se llama `pdq`.\n"
405+
"1. Seleccione una de las series temporales \\$y\\_{si}, ; i=1,2,3,4\\$ y desarrolle lo siguiente:\n",
406+
"\n",
407+
"* **Análisis exploratorio**: examine la serie elegida identificando patrones, tendencias y posibles estacionalidades.\n",
408+
"* **Modelado con SARIMA**: ajuste un modelo \\$SARIMA(p,d,q) \\times (P,D,Q,S)\\$ probando distintas configuraciones de hiperparámetros. Compare resultados, seleccione la mejor configuración y justifique su elección.\n",
409+
"* **Validación del modelo**: evalúe los residuos del modelo óptimo y determine si se comportan como **ruido blanco**.\n",
410+
"\n",
411+
"> **Nota**: Utilice como `target_date` = `'2021-01-01'`. Recuerde que la columna de valores se llama `pdq`.\n",
412+
"\n"
394413
]
395414
},
396415
{
@@ -490,7 +509,15 @@
490509
"id": "5070f8c3",
491510
"metadata": {},
492511
"source": [
493-
"3. Resuelva el ejercicio anterior utilizando la librería de `Prophet`."
512+
"\n",
513+
"\n",
514+
"\n",
515+
"3. Resuelva el ejercicio anterior utilizando la librería **`Prophet`**, desarrollada por Facebook para el modelado de series temporales.\n",
516+
"\n",
517+
"* **Ajuste del modelo**: entrene un modelo con `Prophet` sobre la misma serie seleccionada en el punto anterior.\n",
518+
"* **Evaluación del desempeño**: compare la capacidad predictiva de `Prophet` frente al modelo **SARIMA** previamente ajustado, considerando métricas de error (por ejemplo, MAE, RMSE o MAPE).\n",
519+
"* **Análisis comparativo**: discuta las diferencias en los supuestos de ambos métodos, su facilidad de implementación y la calidad de las predicciones obtenidas.\n",
520+
"* **Conclusiones**: señale en qué situaciones `Prophet` puede ser preferible a SARIMA y viceversa.\n"
494521
]
495522
},
496523
{
@@ -514,7 +541,7 @@
514541
],
515542
"metadata": {
516543
"kernelspec": {
517-
"display_name": "Python 3 (ipykernel)",
544+
"display_name": "docs-py3.10",
518545
"language": "python",
519546
"name": "python3"
520547
},
@@ -528,7 +555,7 @@
528555
"name": "python",
529556
"nbconvert_exporter": "python",
530557
"pygments_lexer": "ipython3",
531-
"version": "3.8.10"
558+
"version": "3.10.11"
532559
}
533560
},
534561
"nbformat": 4,

mkdocs.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -139,6 +139,7 @@ nav:
139139
- Lab 07: labs/lab_07.ipynb
140140
- Lab 08: labs/lab_08.ipynb
141141
- Lab 09: labs/lab_09.ipynb
142+
- Lab 10: labs/lab_10.ipynb
142143

143144
- Tareas:
144145
- Tarea 01: homeworks/hw_01.ipynb

0 commit comments

Comments
 (0)