El Servicio de Información Normativa es un conjunto de datos publicado por el Gobierno de la Ciudad Autónoma de Buenos Aires. Este dataset recopila las normativas sancionadas en el ámbito de la ciudad, publicadas tanto en el Boletín Municipal como en el Boletín Oficial desde el 6 de agosto de 1996.
Warning: One or more parsing issues, call `problems()` on your data frame for details,
e.g.:
dat <- vroom(...)
problems(dat)
Rows: 748671 Columns: 11
── Column specification ────────────────────────────────────────────────────────
Delimiter: ","
chr (7): norma_tipo, norma_organismo_emisor, norma_fecha_sancion, norma_fech...
dbl (4): norma_id, norma_numero, norma_anio_sancion, norma_anio_publicacion
ℹ 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.
Antes de empezar a trabajar con expresiones regulares vamos a analizar un poco la base
Ejercicio 1: Filtrar normativas sobre Locaciones de Obras y Servicios (LOYS)
El objetivo es Filtrar todas las normativas referidas a contrataciones de locaciones de obras y servicios (LOYS).
patron_loys <-regex("\\bloys\\b|locaci.n ?de obras y servicios", T)patron_baja_contrato <-regex("deja sin efecto|\\bbaja",T)aumento <-regex("(aumenta|eleva|sube).{0,20} monto",T)# Me quedo con todas normativas vinculadas a loysloys <- df_normativa |>filter(str_detect(norma_sintesis, patron_loys))loys |>count(norma_anio_sancion)
Warning: There were 2 warnings in `filter()`.
The first warning was:
ℹ In argument: `|...`.
Caused by warning in `stri_detect_regex()`:
! empty search patterns are not supported
ℹ Run `dplyr::last_dplyr_warnings()` to see the 1 remaining warning.
Paso 2: Clasificar en renuncias o designaciones
# 📝 Completar # PISTA: Podes usar case_when() o ifelse()
Paso 3: Extraer el cargo
Usamos str_extract() para identificar el cargo mencionado en la normativa.
Ejemplo: se podrían extraer las gerencias, subgerencias y secretarías
# 📝 Completar
Paso 4: Analizar los resultados
¿Hay algún dato interesante? ¿Hubo diferencia por año?