Nombre del reporte

A continuación se presenta el reporte de Atención Ciudadana con corte de XXXX.

Introducción

Escribir pƔrrafo introductorio acerca del objetivo del reporte

#Limpiar el ambiente de trabajo
rm(list=ls())

#Cargar datos (modificar aqui)
#datos <- read.csv("base.csv")
datos <- data("cms_patient_care"); datos <- cms_patient_care 

#Vista preliminar
#head(datos,3)
#str(datos)
#names(datos)

Trabajar con los NA

# Verificar y manejar valores faltantes
sum(is.na(datos))
## [1] 1
datos_limpios <- na.omit(datos) 

# Convertir tipos de variables si es necesario
#datos_limpios <- datos_limpios %>%
#  mutate_if(is.character, as.factor)

EstadĆ­stica descriptiva por variables

Decriptivos general

# Resumen general
summary(datos_limpios)
##      ccn            facility_name      measure_abbr           score       
##  Length:251         Length:251         Length:251         Min.   : 16.00  
##  Class :character   Class :character   Class :character   1st Qu.: 99.05  
##  Mode  :character   Mode  :character   Mode  :character   Median :100.00  
##                                                           Mean   :194.82  
##                                                           3rd Qu.:247.50  
##                                                           Max.   :694.00  
##      type          
##  Length:251        
##  Class :character  
##  Mode  :character  
##                    
##                    
## 
# Dimensiones del dataset
dim(datos_limpios)
## [1] 251   5

AnƔlisis por variables

# 1. Seleccionar variables numƩricas
vars_numericas <- select_if(datos_limpios, is.numeric)

# 2. Calcular estadĆ­sticos
estadisticos_basicos <- psych::describe(vars_numericas)

# 3. Crear tabla transpuesta y formateada
tabla_final <- estadisticos_basicos %>%
  select(n, mean, sd, min, median, max, skew, kurtosis) %>%
  t() %>% 
  as.data.frame() %>%
  round(2) %>%
  mutate(
    Estadístico = c("n", "Media", "Desviación EstÔndar", "Mínimo", 
                    "Mediana", "MƔximo", "Asimetrƭa", "Curtosis"),
    .before = 1) %>%
  rename(Valor = score)

# 5. Mostrar tabla con formato mejorado
tabla_final %>%
  kable(
    caption = "**Tabla 1. EstadĆ­sticos Descriptivos**",
    digits = 2,
    row.names = FALSE,
    format.args = list(decimal.mark = ".")) %>%
  kable_styling(
    bootstrap_options = c("striped", "hover", "condensed"),
    full_width = FALSE,
    position = "center",
    font_size = 12)
Tabla 1. EstadĆ­sticos Descriptivos
EstadĆ­stico Valor
n 251.00
Media 194.82
Desviación EstÔndar 167.43
MĆ­nimo 16.00
Mediana 100.00
MƔximo 694.00
AsimetrĆ­a 1.50
Curtosis 1.10

Variables categóricas

# Seleccionar variables categóricas
vars_categoricas <- select_if(datos_limpios, is.character)

# Frecuencias y proporciones
for(var in names(vars_categoricas)) {
  cat("\n=== Frecuencias de", var, "===\n")
  print(table(datos_limpios[[var]]))
  print(prop.table(table(datos_limpios[[var]])))}
## 
## === Frecuencias de ccn ===
## 
## 011500 011501 011502 011503 011505 011506 011508 011510 011511 011512 011513 
##     18     18     18     18     18     18     18     17     18     18     18 
## 011514 011516 011517 
##     18     18     18 
## 
##     011500     011501     011502     011503     011505     011506     011508 
## 0.07171315 0.07171315 0.07171315 0.07171315 0.07171315 0.07171315 0.07171315 
##     011510     011511     011512     011513     011514     011516     011517 
## 0.06772908 0.07171315 0.07171315 0.07171315 0.07171315 0.07171315 0.07171315 
## 
## === Frecuencias de facility_name ===
## 
##                        BAPTIST HOSPICE COMFORT CARE COASTAL HOSPICE - BALDWIN 
##                                     18                                     18 
##               CULLMAN REGIONAL HOSPICE                    HOSPICE FAMILY CARE 
##                                     17                                     18 
##            HOSPICE OF LIMESTONE COUNTY             HOSPICE OF THE VALLEY, INC 
##                                     18                                     18 
##                HOSPICE OF WEST ALABAMA                  SAAD HOSPICE SERVICES 
##                                     18                                     18 
##                SHEPHERD'S COVE HOSPICE       SOUTHERNCARE NEW BEACON - JASPER 
##                                     18                                     18 
##  SOUTHERNCARE NEW BEACON N. BIRMINGHAM    SOUTHERNCARE NEW BEACON OF ANNISTON 
##                                     18                                     18 
##     SOUTHERNCARE NEW BEACON SCOTTSBORO                   ST VINCENT'S HOSPICE 
##                                     18                                     18 
## 
##                        BAPTIST HOSPICE COMFORT CARE COASTAL HOSPICE - BALDWIN 
##                             0.07171315                             0.07171315 
##               CULLMAN REGIONAL HOSPICE                    HOSPICE FAMILY CARE 
##                             0.06772908                             0.07171315 
##            HOSPICE OF LIMESTONE COUNTY             HOSPICE OF THE VALLEY, INC 
##                             0.07171315                             0.07171315 
##                HOSPICE OF WEST ALABAMA                  SAAD HOSPICE SERVICES 
##                             0.07171315                             0.07171315 
##                SHEPHERD'S COVE HOSPICE       SOUTHERNCARE NEW BEACON - JASPER 
##                             0.07171315                             0.07171315 
##  SOUTHERNCARE NEW BEACON N. BIRMINGHAM    SOUTHERNCARE NEW BEACON OF ANNISTON 
##                             0.07171315                             0.07171315 
##     SOUTHERNCARE NEW BEACON SCOTTSBORO                   ST VINCENT'S HOSPICE 
##                             0.07171315                             0.07171315 
## 
## === Frecuencias de measure_abbr ===
## 
## beliefs_addressed composite_process dyspena_treatment dyspnea_screening 
##                28                28                28                28 
##      opioid_bowel   pain_assessment    pain_screening        treat_pref 
##                27                28                28                28 
##   visits_imminent 
##                28 
## 
## beliefs_addressed composite_process dyspena_treatment dyspnea_screening 
##         0.1115538         0.1115538         0.1115538         0.1115538 
##      opioid_bowel   pain_assessment    pain_screening        treat_pref 
##         0.1075697         0.1115538         0.1115538         0.1115538 
##   visits_imminent 
##         0.1115538 
## 
## === Frecuencias de type ===
## 
## denominator    observed 
##         126         125 
## 
## denominator    observed 
##    0.501992    0.498008

Visualizaciones

# Histogramas para variables numƩricas
for(col in names(vars_numericas)) {
  print(
    ggplot(datos_limpios, aes(x = .data[[col]])) +
      geom_histogram(fill = "steelblue", alpha = 0.7, bins = 30) +
      labs(title = paste("Distribución de", col),
           x = col, y = "Frecuencia") +
      theme_minimal()
  )
}

# Boxplots
for(col in names(vars_numericas)) {
  print(
    ggplot(datos_limpios, aes(y = .data[[col]])) +
      geom_boxplot(fill = "lightgreen", alpha = 0.7) +
      labs(title = paste("Boxplot de", col),
           y = col) +
      theme_minimal()
  )
}

# GrÔficos de barras para categóricas (primeras 3 variables)
cat_vars <- names(vars_categoricas)[1:min(3, length(names(vars_categoricas)))]
for(var in cat_vars) {
  print(
    ggplot(datos_limpios, aes(x = .data[[var]])) +
      geom_bar(fill = "coral", alpha = 0.7) +
      labs(title = paste("Frecuencia de", var),
           x = var, y = "Conteo") +
      theme_minimal() +
      theme(axis.text.x = element_text(angle = 45, hjust = 1))
  )
}

Correlaciones

#3if(ncol(vars_numericas) > 1) {
#  cor_matrix <- cor(vars_numericas, use = "complete.obs")
  
# Visualización con heatmap
#library(corrplot)
#corrplot(cor_matrix, method = "color", type = "upper",
#           tl.col = "black", tl.srt = 45)