#INTODUCCIÓN El Módulo sobre Eventos Culturales Seleccionados (MODECULT) genera información estadística sobre la asistencia a eventos culturales y la participación en actividades artísticas de la población en México. Lo anterior, a fin de proporcionar datos clave para contribuir al diseño de políticas públicas. Desde 2016 y hasta mayo de 2024, el módulo se levantó como parte de la Encuesta Nacional sobre Confianza del Consumidor (ENCO). A partir de 2025 el programa tiene un actualización conceptual y metodológica y se levanta con un operativo y muestra de viviendas independientes a la ENCO.
En este trabajo se analizan los promedios de las asistencias a diferentes eventos culturales en funcion del número de veces que se asiste en el último año. Es decir, entre junio del 2024 a junio del 2025, ya que la encuensa fue levantada en este mes
##RESULTADOS
library("readr")
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("tidyr")
#Subimos la base obtenida en el modecult
base<-read_csv("conjunto_de_datos_tmodecult_modecult2025.csv")
## Rows: 4240 Columns: 76
## ── Column specification ────────────────────────────────────────────────────────
## Delimiter: ","
## chr (17): llaveviv, p1_1, p1_2, p1_3, p1_4, p1_5, p1_6, p1_7, p1_7_esp, p1_...
## dbl (58): p2_1, p2_2, p2_3, p2_4, p2_5, p2_6, p3_1, p3_2, p3_3, f_s2_5, p4_...
## dttm (1): llavemod
##
## ℹ Use `spec()` to retrieve the full column specification for this data.
## ℹ Specify the column types or set `show_col_types = FALSE` to quiet this message.
#Creamos el objeto base, cambiamos los datos en letras a numeros
base<-base %>%
mutate(across(p1_1:p1_7, as.numeric))
medias<- base %>%
summarise(across(p1_1:p1_7,\(x) mean(x, na.rm=TRUE)))
#Estructuramos la tabla final
# 1. Creamos un vector con las etiquetas exactas de tu imagen
etiquetas <- c("p1_1" = "Una obra de teatro, por ejemplo: comedia, musical o títeres","p1_2" = "Un concierto o presentación de música en vivo, por ejemplo: de banda, moderna, folclórica o clásica",
"p1_3" = "Un espectáculo de danza, por ejemplo: contemporánea, folclórica o ballet",
"p1_4" = "Una exposición o museo, por ejemplo: de pintura, fotografía, ciencia o de historia",
"p1_5" = "Proyección de películas o cine",
"p1_6" = "Ferias, como muestras artesanales, gastronómicas o de productos locales",
"p1_7" = "Otro espectáculo cultural, como circo o charrería")
#Calculamos las medias y estructuramos la tabla final
medias <- base %>%
# Seleccionamos las columnas de interés
select(p1_1:p1_7) %>%
# Calculamos la media de cada columna ignorando valores vacíos
summarise(across(everything(), \(x) mean(x, na.rm = TRUE))) %>%
# Pasamos la tabla de formato ancho a largo
pivot_longer(cols = everything(), names_to = "Variable", values_to = "Media") %>%
# Asignamos las etiquetas correspondientes a cada variable
mutate(Etiqueta = etiquetas[Variable]) %>%
# Reorganizamos las columnas para una mejor lectura
select(Variable, Etiqueta, Media)
# 3. Visualizar la tabla en la consola
print(medias)
## # A tibble: 7 × 3
## Variable Etiqueta Media
## <chr> <chr> <dbl>
## 1 p1_1 Una obra de teatro, por ejemplo: comedia, musical o títeres 0.282
## 2 p1_2 Un concierto o presentación de música en vivo, por ejemplo: d… 0.759
## 3 p1_3 Un espectáculo de danza, por ejemplo: contemporánea, folclóri… 0.391
## 4 p1_4 Una exposición o museo, por ejemplo: de pintura, fotografía, … 0.312
## 5 p1_5 Proyección de películas o cine 1.80
## 6 p1_6 Ferias, como muestras artesanales, gastronómicas o de product… 0.872
## 7 p1_7 Otro espectáculo cultural, como circo o charrería 0.0366
#Comparamos por la variable sexo
base %>% count(sexo)
## # A tibble: 2 × 2
## sexo n
## <dbl> <int>
## 1 1 1949
## 2 2 2291
base$sexo <- factor(base$sexo,
levels = c(1, 2),
labels = c("Hombres", "Mujeres"))
# 2. Calculamos las medias agrupadas por sexo
tablas_medias_sexo <- base %>%
# Agrupamos por la variable sexo y seleccionamos las columnas numéricas
group_by(sexo) %>%
summarise(across(p1_1:p1_7, \(x) mean(x, na.rm = TRUE)), .groups = "drop") %>%
# Pasamos a formato largo para poder integrar las etiquetas fácilmente
pivot_longer(cols = p1_1:p1_7, names_to = "Variable", values_to = "Media") %>%
# Asignamos el texto largo de la pregunta
mutate(Etiqueta = etiquetas[Variable]) %>%
# Pasamos la variable sexo a columnas para comparar Hombres vs Mujeres lado a lado
pivot_wider(names_from = sexo, values_from = Media) %>%
# Reorganizamos el orden de las columnas
select(Variable, Etiqueta, Hombres, Mujeres)
#visualizar el resultado
print(tablas_medias_sexo)
## # A tibble: 7 × 4
## Variable Etiqueta Hombres Mujeres
## <chr> <chr> <dbl> <dbl>
## 1 p1_1 Una obra de teatro, por ejemplo: comedia, musical o … 0.273 0.289
## 2 p1_2 Un concierto o presentación de música en vivo, por e… 0.847 0.684
## 3 p1_3 Un espectáculo de danza, por ejemplo: contemporánea,… 0.347 0.429
## 4 p1_4 Una exposición o museo, por ejemplo: de pintura, fot… 0.348 0.281
## 5 p1_5 Proyección de películas o cine 2.00 1.62
## 6 p1_6 Ferias, como muestras artesanales, gastronómicas o d… 0.890 0.856
## 7 p1_7 Otro espectáculo cultural, como circo o charrería 0.0395 0.0340