En la Ciudad de México se repite que “en hora pico atropellan a alguien cada media hora”. ¿Es cierto?
Durante todo el curso vamos a contestar esta pregunta con datos reales. Al principio no tenemos las herramientas para hacerlo bien; cada unidad del temario agrega una pieza, y en la última (pruebas de hipótesis) podremos responderla con rigor.
El Centro de Comando, Control, Cómputo, Comunicaciones y Contacto
Ciudadano (C5) registra cada reporte de incidente vial: fecha, hora al
segundo, tipo de incidente, alcaldía, coordenadas y si el reporte se
confirmó. Los datos son abiertos (licencia CC BY 4.0) y se preparan con
0-datos-atropellamientos.R.
atropellamientos <- leer_atropellamientos()
glimpse(atropellamientos)
## Rows: 52,715
## Columns: 11
## $ folio <chr> "C2O/20220101/00099", "C2O/20220101/00232", "C2P/2022010…
## $ fecha <date> 2022-01-01, 2022-01-01, 2022-01-01, 2022-01-01, 2022-01…
## $ hora <time> 09:05:53, 18:42:30, 08:19:36, 08:23:22, 03:19:07, 03:43…
## $ dia_semana <chr> "Sábado", "Sábado", "Sábado", "Sábado", "Sábado", "Sábad…
## $ codigo_cierre <chr> "A", "A", "D", "D", "A", "F", "F", "A", "A", "D", "F", "…
## $ alcaldia <chr> "Iztapalapa", "Xochimilco", "Azcapotzalco", "Azcapotzalc…
## $ latitud <dbl> 19.38380, 19.24900, 19.49014, 19.49014, 19.51059, 19.493…
## $ longitud <dbl> -99.02114, -99.09420, -99.20769, -99.20769, -99.13774, -…
## $ momento <dttm> 2022-01-01 09:05:53, 2022-01-01 18:42:30, 2022-01-01 08…
## $ hora_num <int> 9, 18, 8, 8, 3, 3, 6, 7, 8, 8, 9, 13, 14, 15, 15, 15, 15…
## $ mes <chr> "2022-01", "2022-01", "2022-01", "2022-01", "2022-01", "…
No todos los reportes son atropellamientos reales: muchos son
duplicados (varias personas llaman por el mismo hecho) o falsos.
Trabajaremos solo con los confirmados (código de cierre
A).
atropellamientos |> count(codigo_cierre, name = "reportes") |>
mutate(porcentaje = round(100 * reportes / sum(reportes), 1))
## # A tibble: 4 × 3
## codigo_cierre reportes porcentaje
## <chr> <int> <dbl>
## 1 A 20537 39
## 2 D 26436 50.1
## 3 F 5637 10.7
## 4 I 105 0.2
Definimos la variable aleatoria
\[ X = \text{minutos entre dos atropellamientos confirmados consecutivos} \]
en la hora pico de días laborables (lunes a viernes, de 18:00 a 21:00). El tiempo se mide con un “reloj de hora pico” que solo corre en esas horas: cuando termina la ventana de un día, el reloj continúa a las 18:00 del siguiente día laborable. En el capítulo 2 veremos por qué medir así es indispensable.
Su media, \(\mu = E[X]\), es el parámetro que nos interesa: la frase “cada media hora” dice que \(\mu = 30\) minutos.
Tomamos los atropellamientos de marzo de 2023, un mes sin periodos vacacionales largos (solo tiene el festivo del lunes 20; en el capítulo 2 revisamos que los festivos no cambian la tasa). (En el capítulo 2 descubriremos que algunos atropellamientos aparecen confirmados dos veces; la muestra ya los cuenta una sola vez.)
x <- muestra_curso(atropellamientos)
length(x)
## [1] 121
summary(x)
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 0.1167 11.3500 23.5000 33.8813 48.6333 152.8333
mean(x)
## [1] 33.88127
La media muestral no es 30 minutos, sino 33.9. ¿Eso basta para decir que la frase es falsa? Si tomáramos otro mes, ¿obtendríamos lo mismo? ¿Qué tan lejos de 30 tendría que estar la media para estar seguros?
Todavía no podemos contestar. Ese es el plan del curso:
| Capítulo | Unidad del temario | Qué aporta a la respuesta |
|---|---|---|
| 1 | Distribuciones muestrales | Cuánto cambia la media de una muestra a otra |
| 2 | Análisis exploratorio | Si los datos se comportan como un modelo exponencial, y en qué condiciones |
| 3 | Estimación puntual | El mejor estimador de \(\mu\) y qué tan preciso puede ser |
| 4 | Estimación por intervalos | Un rango de valores plausibles para \(\mu\) |
| 5 | Pruebas de hipótesis | La respuesta: ¿es compatible \(\mu = 30\) con los datos? |