1 Cargar Librerías

Se importan las librerías necesarias para el procesamiento de datos, visualización y generación de reportes.

library(knitr)
library(kableExtra)
library(dplyr)
library(ggplot2)
library(janitor)

2 Cargar datos

Se permite la carga interactiva del archivo de datos para analizar información externa.

archivo <- file.choose()
datos <- read.csv(archivo, stringsAsFactors = FALSE) %>% clean_names()
datos$accident_date_time <- as.POSIXct(datos$accident_date_time, format="%m/%d/%Y %H:%M")

3 Extrae la variable

Se segmenta la hora del accidente en periodos categóricos para identificar patrones temporales.

datos$hora_numerica <- as.numeric(format(datos$accident_date_time, "%H"))
datos$periodo <- cut(datos$hora_numerica, 
                     breaks = c(-1, 11, 17, 23), 
                     labels = c("Mañana", "Tarde", "Noche"))

4 Conteo

Se verifica la distribución inicial de los eventos mediante un conteo simple.

## 
## Mañana  Tarde  Noche 
##   1435   1000    360

5 Tabla de frecuencia

Se organiza la información en una tabla formal con frecuencias absolutas y relativas para una lectura comparativa.

CUADRO N°1: Distribución de frecuencias de accidentes según el periodo del día
Frecuencia relativa
Periodo ni hi (%) fi
Mañana 1435 51.34 0.51
Tarde 1000 35.78 0.36
Noche 360 12.88 0.13
Total 2795 100.00 1.00

6 Gráficas

Las representaciones visuales permiten detectar rápidamente la concentración de accidentes por periodos.

6.1 Cantidad absoluta de Accidentes por Periodos

6.2 Cantidad Absoluta de Accidentes por Periodos

6.3 Cantidad relativa de Accidentes por Periodos

6.4 Cantidad relativa de Accidentes por Periodos

6.5 Diagrama Circular

7 Indicadores Estadístico

Se calcula la moda para identificar el periodo con mayor incidencia de accidentes.

Variable Moda
Periodo Mañana

8 Conclusión

La variable “Accidentes por hora”, presenta como valor más frecuente “Mañana”. La variable “Accidentes por hora” fluctúa entre 360 y 1435