title: “Dashboard Ejecutivo para la Gestión de Citas Médicas” author: “Liliana Perez - Claudia Mora” output: flexdashboard::flex_dashboard: orientation: rows vertical_layout: fill theme: cosmo runtime: shiny — —
getwd()
## [1] "C:/Users/Paty/Desktop/FUCS/analitica de datos 2/2. Operatividad de Rstudio"
list.files()
## [1] "appointments.csv" "dashboard.Rmd"
## [3] "Operatividad-de-RStudio.html" "Operatividad-de-RStudio.pdf"
## [5] "Operatividad-de-RStudio_files" "Operatividad de RStudio.Rmd"
## [7] "Operatividad de Rstudio.Rproj" "patients.csv"
## [9] "slots.csv"
appointments <- read.csv(
"C:/Users/Paty/Desktop/FUCS/analitica de datos 2/2. Operatividad de RStudio/appointments.csv"
)
dim(appointments)
## [1] 111488 16
</> Markdown
porcentaje_atencion <- round(
mean(appointments$status=="attended")*100,2)
valueBox(
porcentaje_atencion,
caption = "Porcentaje de citas atendidas",
icon = "fa-calendar-check",
color = "success"
)
77.17
no_aprovechadas <- round(
mean(appointments$status!="attended")*100,2)
gauge(
no_aprovechadas,
min = 0,
max = 100,
sectors = gaugeSectors(
success = c(0,15),
warning = c(15,25),
danger = c(25,100)
)
)
espera <- round(
mean(appointments$waiting_time,
na.rm=TRUE),2)
valueBox(
espera,
caption="Tiempo promedio de espera (min)",
icon="fa-clock",
color="warning"
)
44.09
</> Markdown Row ————————————-
### Estado de las citas
grafico1 <- appointments %>%
count(status) %>%
ggplot(aes(
x=reorder(status,n),
y=n,
fill=status))+
geom_col()+
scale_fill_brewer(
palette="Set2")+
theme_minimal()+
labs(
title="Estado de las citas médicas",
x="Estado",
y="Número de citas")+
theme(
legend.position="none")
grafico1
¿Qué evidencia el gráfico?**
La mayoría de las citas culminan en atención efectiva; sin embargo, aproximadamente el 22,3% de las agendas no son aprovechadas.
¿Por qué es relevante?**
La inasistencia genera pérdida de productividad y disminuye la disponibilidad de servicios.
¿Qué acción se sugiere?**
Implementar mecanismos automatizados de confirmación y reasignación de citas.
ggplotly(grafico1)
La incorporación de interactividad permite a los directivos explorar autónomamente los datos mediante funciones de zoom, desplazamiento y visualización detallada de frecuencias.
ggplot(
appointments,
aes(waiting_time))+
geom_histogram(
bins=30,
fill="steelblue")+
theme_minimal()+
labs(
title="Distribución del tiempo de espera",
x="Minutos",
y="Frecuencia")+
annotate(
"text",
x=220,
y=5000,
label="Pacientes con esperas prolongadas",
color="red")+
geom_vline(
xintercept=44,
linetype="dashed")
## Warning: Removed 25456 rows containing non-finite outside the scale range
## (`stat_bin()`).
ggplot(
appointments,
aes(waiting_time))+
geom_histogram(
bins=30,
fill="steelblue")+
theme_minimal()+
labs(
title="Distribución del tiempo de espera",
x="Minutos",
y="Frecuencia")+
annotate(
"text",
x=220,
y=5000,
label="Pacientes con esperas prolongadas",
color="red")+
geom_vline(
xintercept=44,
linetype="dashed")
## Warning: Removed 25456 rows containing non-finite outside the scale range
## (`stat_bin()`).
gauge(
49.6,
min=0,
max=100,
symbol='%',
sectors=gaugeSectors(
success=c(70,100),
warning=c(50,70),
danger=c(0,50)
))
¿Qué evidencia?**
El modelo presentó una capacidad predictiva insuficiente.
¿Por qué es relevante?**
Las variables disponibles no explican adecuadamente la inasistencia.
¿Qué acción se sugiere?**
Fortalecer los sistemas de información incorporando variables clínicas y operativas adicionales.
Implementar sistemas automáticos de recordatorio y confirmación de citas mediante mensajes de texto o llamadas automatizadas, con el propósito de disminuir el porcentaje de agendas no aprovechadas.
Fortalecer los sistemas institucionales de información incorporando variables clínicas, operativas y comportamentales que permitan desarrollar modelos predictivos más robustos y mejorar la toma de decisiones basada en datos.