Los siguientes comandos son para poder leer el excel de trabajo donde se instala el paquete readxl
options(repos = c(CRAN = "https://cran.rstudio.com/"))
install.packages("readxl")
## Installing package into 'C:/Users/nicol/AppData/Local/R/win-library/4.5'
## (as 'lib' is unspecified)
## package 'readxl' successfully unpacked and MD5 sums checked
##
## The downloaded binary packages are in
## C:\Users\nicol\AppData\Local\Temp\RtmpOmkVrk\downloaded_packages
library(readxl)
Datos_residuoscx=read_excel("bd_generacion_residuos_2025.xlsx")
View(Datos_residuoscx)
head(Datos_residuoscx)
## # A tibble: 6 × 7
## fecha dia_semana es_feriado tipo_dia residuos_base_t
## <dttm> <chr> <lgl> <chr> <dbl>
## 1 2025-01-01 00:00:00 Wednesday TRUE Feriado 37.5
## 2 2025-01-02 00:00:00 Thursday FALSE Normal 49.0
## 3 2025-01-03 00:00:00 Friday FALSE Normal 44.6
## 4 2025-01-04 00:00:00 Saturday FALSE Normal 42.0
## 5 2025-01-05 00:00:00 Sunday FALSE Normal 33.1
## 6 2025-01-06 00:00:00 Monday FALSE Normal 33.1
## # ℹ 2 more variables: factor_incremento <dbl>, residuos_totales_t <dbl>
str(Datos_residuoscx)
## tibble [365 × 7] (S3: tbl_df/tbl/data.frame)
## $ fecha : POSIXct[1:365], format: "2025-01-01" "2025-01-02" ...
## $ dia_semana : chr [1:365] "Wednesday" "Thursday" "Friday" "Saturday" ...
## $ es_feriado : logi [1:365] TRUE FALSE FALSE FALSE FALSE FALSE ...
## $ tipo_dia : chr [1:365] "Feriado" "Normal" "Normal" "Normal" ...
## $ residuos_base_t : num [1:365] 37.5 49 44.6 42 33.1 ...
## $ factor_incremento : num [1:365] 1.24 1 1 1 1 ...
## $ residuos_totales_t: num [1:365] 46.4 49 44.6 42 33.1 ...
Se trabaja por semana y por mes de todos los datos
install.packages("dplyr")#pauquete dplyr para leer datos de numero y letras
## Installing package into 'C:/Users/nicol/AppData/Local/R/win-library/4.5'
## (as 'lib' is unspecified)
## package 'dplyr' successfully unpacked and MD5 sums checked
##
## The downloaded binary packages are in
## C:\Users\nicol\AppData\Local\Temp\RtmpOmkVrk\downloaded_packages
install.packages("lubridate")#
## Installing package into 'C:/Users/nicol/AppData/Local/R/win-library/4.5'
## (as 'lib' is unspecified)
## package 'lubridate' successfully unpacked and MD5 sums checked
##
## The downloaded binary packages are in
## C:\Users\nicol\AppData\Local\Temp\RtmpOmkVrk\downloaded_packages
library(dplyr)
##
## Adjuntando el paquete: 'dplyr'
## The following objects are masked from 'package:stats':
##
## filter, lag
## The following objects are masked from 'package:base':
##
## intersect, setdiff, setequal, union
library(lubridate)
##
## Adjuntando el paquete: 'lubridate'
## The following objects are masked from 'package:base':
##
## date, intersect, setdiff, union
# Crear un resumen semanal de la generación de residuos
resumen_semanal <- Datos_residuoscx %>% # Toma la base de datos original
mutate(semana = floor_date(fecha, "week", week_start = 1)) %>% #Crea nueva columna semana con lunes de inicio
group_by(semana) %>% # Agrupa los datos por cada semana
summarise( # Resume las variables para cada grupo (cada semana)
total_residuos_t = sum(residuos_totales_t), # Suma total de residuos en la semana (toneladas)
promedio_diario_t = mean(residuos_totales_t), # Promedio diario de residuos en la semana
n_dias = n() # Número de días incluidos en esa semana
) %>% # Fin del resumen
ungroup() # Quita la agrupación para evitar problemas en pasos siguientes
# Ver las primeras filas del resumen semanal
head(resumen_semanal)
## # A tibble: 6 × 4
## semana total_residuos_t promedio_diario_t n_dias
## <dttm> <dbl> <dbl> <int>
## 1 2024-12-30 00:00:00 215. 43.0 5
## 2 2025-01-06 00:00:00 278. 39.7 7
## 3 2025-01-13 00:00:00 263. 37.6 7
## 4 2025-01-20 00:00:00 269. 38.4 7
## 5 2025-01-27 00:00:00 254. 36.3 7
## 6 2025-02-03 00:00:00 295. 42.1 7
# Ver un resumen estadístico del total semanal de residuos
summary(resumen_semanal$total_residuos_t)
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 128.9 265.9 280.7 276.4 290.7 311.0