Bases de Datos
Databases
1. Conexión directa a SQL Server
1. Direct SQL Server connection
Consulta bases de datos corporativas directamente desde R sin exportar a Excel.
Query corporate databases directly from R without exporting to Excel.
Ejemplo baseBase example
library(DBI)
con <- dbConnect(odbc::odbc(),
dsn = "Warehouse", uid = "user")
data <- dbGetQuery(con, "SELECT * FROM students")
APIs
APIs
2. Consumo de servicios REST (JSON)
2. Consume REST services (JSON)
Conéctate a sistemas externos para extraer datos en tiempo real.
Connect to external systems to extract real-time data.
Ejemplo baseBase example
library(httr2)
resp <- request("https://api.edu.gov") %>%
req_perform() %>%
resp_body_json()
Extracción Web
Web Scraping
3. Web Scraping de tablas públicas
3. Web Scraping public tables
Extrae información automáticamente de directorios o páginas web estructuradas.
Automatically extract information from directories or structured web pages.
Ejemplo baseBase example
library(rvest)
url <- "https://school-list.com"
table <- read_html(url) %>%
html_node("table") %>%
html_table()
Sincronización
Syncing
4. Leer y escribir en Google Sheets
4. Read and write to Google Sheets
Automatiza la actualización de hojas de cálculo colaborativas de tu equipo.
Automate the update of your team's collaborative spreadsheets.
Ejemplo baseBase example
library(googlesheets4)
sheet_data <- read_sheet("URL_SHEET")
sheet_append(sheet_data, data = new_records)
Lógica Compleja
Complex Logic
5. Clasificación con reglas múltiples
5. Classification with multiple rules
Crea nuevas métricas evaluando varias condiciones al mismo tiempo usando case_when.
Create new metrics by evaluating multiple conditions simultaneously using case_when.
Ejemplo baseBase example
df <- df %>% mutate(status = case_when(
grade < 60 ~ "At Risk",
grade < 80 ~ "Median",
TRUE ~ "Excellent"
))
Transformación
Reshaping
6. Aplanar tablas anchas (Pivot Longer)
6. Flatten wide tables (Pivot Longer)
Convierte formatos de reporte en bases de datos verticales para graficar fácilmente.
Convert report formats into vertical databases for easy plotting.
Ejemplo baseBase example
df %>% pivot_longer(
cols = starts_with("month"),
names_to = "period",
values_to = "enrollment"
)
Cruces
Joins
7. Cruces con nombres aproximados
7. Fuzzy matching for names
Une bases de datos aunque los nombres tengan errores ortográficos o variaciones.
Join databases even if names have spelling errors or variations.
Ejemplo baseBase example
library(fuzzyjoin)
stringdist_join(db1, db2,
by = "full_name",
max_dist = 2)
Nulos
Nulls
8. Relleno inteligente de datos nulos
8. Smart coalesce for null data
Sustituye valores en blanco tomando automáticamente info de columnas de respaldo.
Replace blank values by automatically pulling info from backup columns.
Ejemplo baseBase example
df %>% mutate(email = coalesce(
personal_email,
work_email,
"no_contact@edu.com"
))
Tendencias
Trends
9. Cálculo de promedios móviles
9. Moving averages calculation
Suaviza las fluctuaciones diarias para entender la tendencia real de los datos.
Smooth daily fluctuations to understand the real trend of the data.
Ejemplo baseBase example
library(slider)
df %>% mutate(avg_7d = slide_dbl(
sales, mean, .before = 7
))
Visualización Web
Web Viz
10. Gráficos 100% interactivos
10. 100% Interactive graphs
Convierte gráficos estáticos en vistas web con zoom y tooltips usando plotly.
Turn static charts into web views with zoom and tooltips using plotly.
Ejemplo baseBase example
library(plotly)
p <- ggplot(df, aes(x, y)) + geom_line()
ggplotly(p)
Geografía
Geography
11. Mapas geográficos interactivos
11. Interactive geospatial maps
Muestra la ubicación de escuelas o clientes en un mapa dinámico con Leaflet.
Show the location of schools or clients on a dynamic map with Leaflet.
Ejemplo baseBase example
library(leaflet)
leaflet(schools) %>% addTiles() %>%
addMarkers(~lng, ~lat, popup=~name)
Comparación
Comparison
12. Boxplots para comparar desempeños
12. Boxplots for performance comparison
Visualiza la dispersión y medianas de múltiples grupos al mismo tiempo.
Visualize the spread and medians of multiple groups simultaneously.
Ejemplo baseBase example
ggplot(df, aes(campus, score)) +
geom_boxplot(fill="#5ee0a0") +
coord_flip()
Densidad
Density
13. Mapas de calor (Heatmaps)
13. Heatmaps for density
Identifica visualmente en qué días y horas se concentran más incidencias.
Visually identify which days and times have the highest concentration of incidents.
Ejemplo baseBase example
ggplot(df, aes(day, hour, fill=count)) +
geom_tile() +
scale_fill_viridis_c()
Machine Learning
Machine Learning
14. Modelo de Regresión Logística
14. Logistic Regression model
Crea un modelo predictivo para estimar probabilidades de eventos binarios (Sí/No).
Create a predictive model to estimate probabilities of binary events (Yes/No).
Ejemplo baseBase example
model <- glm(dropout ~ .,
data = train, family = "binomial")
probs <- predict(model, test)
Estadística
Statistics
15. Análisis de Varianza (ANOVA)
15. Analysis of Variance (ANOVA)
Comprueba si existen diferencias significativas entre tres o más metodologías.
Check if there are significant differences between three or more methodologies.
Ejemplo baseBase example
res <- aov(score ~ method, data = df)
summary(res)
TukeyHSD(res)
Reglas Visuales
Visual Rules
16. Árboles de decisión de negocio
16. Business decision trees
Genera diagramas que explican reglas predictivas de forma visual y entendible.
Generate diagrams that explain predictive rules in a visual, understandable way.
Ejemplo baseBase example
library(rpart)
fit <- rpart(risk ~ age + income, data = df)
plot(fit); text(fit)
Proyección
Forecasting
17. Pronósticos de series de tiempo
17. Time series forecasting
Proyecta la demanda o presupuestos a futuro basado en patrones históricos.
Project future demand or budgets based on historical patterns.
Ejemplo baseBase example
library(fable)
df %>% model(ETS(total)) %>%
forecast(h = "1 year")
Desarrollo Web
Web Dev
18. Construir aplicaciones web interactivas
18. Build interactive web applications
Usa Shiny para desplegar interfaces donde los usuarios filtren sus propios datos.
Use Shiny to deploy interfaces where users can filter their own data.
Ejemplo baseBase example
ui <- fluidPage(plotOutput("p"))
server <- function(input, output) {
output$p <- renderPlot(ggplot(df))
}
Alertas
Alerts
19. Automatizar envíos de correos
19. Automate email sending
Configura el envío de reportes procesados a directivos directamente desde tu script.
Configure sending processed reports to managers directly from your script.
Ejemplo baseBase example
library(blastula)
render_email("report.Rmd") %>%
smtp_send(to = "boss@company.com")
Operaciones
Operations
20. Ejecución sin interfaz gráfica (CLI)
20. Headless execution (CLI)
Prepara tus rutinas analíticas para ejecutarse en segundo plano con PowerShell.
Prepare your analytical routines to run in the background with PowerShell.
Ejemplo baseBase example
# En la terminal de Windows (CMD/PowerShell):
Rscript.exe process_data.R --args "2026"