Introducción a la programación en R

¿Quiénes financian las campañas 2024?

Clase abierta - Fundación SOL

jueves, 10 oct , 2024

¿Quiénes somos?

Fundación SOL

  • Más de 17 años de trabajo colectivo autogestionado.
  • Institución que busca aportar al debate crítico.
  • Trabajamos principalmente en actividades de investigación y acción con organizaciones de trabajadores.
  • Realizamos clases en la academia y estamos en constante autoformación.

Financiamiento2023

Mira nuestra memoria 2023

Investigar es nuestra pasión

¿Qué veremos hoy?

Aportes de Campaña para las Elecciones Regionales y Municipales 2024.

  • Objetivo: Visualizar los aportes recibidos por candidatos y partidos políticos para las campañas 2024 utilizando fuentes abiertas de información (mientras aprendemos a programar nuestros reportes).
  • Herramientas:
    • Código R y Shiny, presentación Quarto, entre otras.

Fuentes abiertas

  • La posibilidad de acceder a los datos es importante y tiene mucho valor. En este caso trabajamos con una planilla (comunmente llamada: base de datos) que se encuentra disponible gracias al trabajo de quienes sistematizaron la información y/o datos que la conforman.

  • Los datos de fuentes abiertas muchas veces requieren un trabajo posterior, de “transformación de datos” en donde la información se procesa para los objetivos de investigación particulares.

Metodología

  • Abordar el tratamiento de datos requiere definiciones metodológicas claras. Generalmente se definen antes de comenzar el tratamiento, en la etapa de diseño de la investigación.

  • Podemos pensar en una metodología general y procesos más puntuales o métodos específicos para abordad el tratamiento de datos específico.

¿Por qué los datos?

  • Pensamiento crítico
  • Trabajo colectivo
  • Situación histórica
  • Poder

¿Por qué R?

  • Libre y gratis
  • Comunidad de apoyo
  • Pensado para estadística

Reporte esperado

Shiny app “básica”

Carga de Librerías

Para construir la aplicación Shiny, utilizamos varias librerías de R que facilitan la manipulación de datos, la creación de interfaces interactivas y la visualización de información.

library(ggplot2)
library(DT)
library(tidyverse)
library(shinyWidgets)
library(shinydashboard)
library(shinythemes)
library(stringi)
library(shiny)
library(bslib)
library(openxlsx)
library(janitor)
library(scales)

Carga planilla

La planilla a utilizar corresponde a la que pone a disposición el sito web del SERVEL (Servicio electoral de Chile)

Código de carga

ruta <- "https://www.dropbox.com/scl/fi/yrvmdh33sh5mptrzoiczc/Reporte_Aportes_DEFINITIVAS_241004.xlsx?rlkey=zefujy57j9czuaj05jbl9iv72&st=04krizcz&dl=1"

data <- openxlsx::read.xlsx(ruta, startRow = 8) |> 
        janitor::clean_names()
  • En este caso cargaremos un planilla que ya ha sido sometida a un proceso de limpieza. Porque la preparación de nuestros datos por lo general es…

Trabajo duro

Transformaciones básicas

data <- data %>%
    mutate(
        territorio_electoral = toupper(stri_trans_general(territorio_electoral,
        "Latin-ASCII")),
        territorio_electoral = case_when(
            territorio_electoral == "-" ~ "PARTIDO POLITICO",
            TRUE ~ as.factor(territorio_electoral)
        ),
        tipo_de_aporte = as.factor(tipo_de_aporte),
        nombre_aportante = as.factor(nombre_aportante),
        nombre_aportante = case_when(
            nombre_aportante == "-" ~ "Aportes menores sin identificar",
            TRUE ~ as.factor(nombre_aportante)
        ),
        tipo_eleccion = as.factor(str_trim(eleccion, side = "both"))
    )

Sigamos mirando nuestro código en un IDE

  • ¿Qué es un IDE? Es la sigla en inglés para Integrated Development Environment, es español se podría traducir como: Entorno de desarrollo integrado.

Entonces…

Básicamente: sera nuestro lugar favorito para escribir código y hacer nuestro trabajo más sencillo

Conocer algunos conceptos generales del ámbito de la programación, nos llevará, generalmente a aprender algunas palabras en inglés (¿más colonialismo intelectual?)

Antes de irnos…

Tu aporte es fundamental (estás a un click de apoyar)

Nuestra Escuela de Datos

  • Desarrollar un espacio abierto a la participación masiva, orientado a personas que realicen activismo o actividades laborales donde utilicen herramientas de programación o potencialmente puedan utilizarlas.

Fortalecimiento

  • Adicionalmente, se espera que proceso formativo sea de utilidad para organizaciones sindicales y populares, mediante la enseñanza del uso de herramientas de software libre para fortalecer sus procesos internos vinculados con la comunicación o sistematización de datos.

Descripción

Los videos de clases quedarán disponibles y además se generarán 4 cápsulas de 30 minutos con profundización de algunos temas, más dos de 15 minutos relacionadas con la instalación y uso general de software.

Clases

  • Trabajo con datos: ¿Qué son los datos? ¿Por qué abordar el uso de datos y qué datos generamos en las organizaciones? ¿Qué herramientas nos pueden facilitar el uso de datos?

  • Estadística: ¿Por qué puede ser una compañía para los procesos internos de nuestras organizaciones? Algunas medidas importantes para considerar: media, mediana, percentiles La estadística en nuestra vida cotidiana.

Clases

  • Programación: Herramientas, estilos y por qué puede facilitar los procesos automatizar tareas. Conceptos clave sobre programación en general y la programación para el análisis de datos o automatización de procesos.

  • Generación de un análisis descriptivo: Trabajo de limpieza de una planilla de datos pública. Primeros tabulados a partir de nuestros datos Análisis de distribuciones y Gráficos.

Clases

  • Aplicaciones - 1: Envío de correos y creación de tablero de resumen de datos o dashboard.
  • Aplicaciones - 2: Página web estática con Git y actualización desde consola.

Periodicidad

1 vez por semana desde el jueves 17 de octubre al jueves 28 de noviembre (1 feriado del 31 de octubre)

Gracias!