Análisis de datos y big data

17.10.2025

Esta guía te proporciona las herramientas necesarias para trabajar con grandes volúmenes de datos utilizando SQL Server, R y Power BI. Aprenderás a extraer datos, realizar modelos predictivos y visualizar los resultados de forma clara y efectiva. 

Guía Completa: SQL Server, R y Power BI

Guía Completa: SQL Server, R y Power BI

Una guía interactiva para el análisis de datos con ejemplos prácticos y referencias completas

Bienvenida a la Guía

Esta guía te proporciona las herramientas necesarias para trabajar con grandes volúmenes de datos utilizando SQL Server, R y Power BI. Aprenderás a extraer datos, realizar modelos predictivos y visualizar los resultados de forma clara y efectiva.

SQL Server
Almacenamiento de datos
R
Análisis estadístico
Power BI
Visualización
Integración
Flujo de trabajo completo

¿Qué encontrarás en esta guía?

Comandos SQL Esenciales

Referencia completa de comandos SQL Server para administración y análisis de datos.

Ejemplos Prácticos

Consultas SQL reales utilizadas en análisis de datos censales con explicaciones detalladas.

Flujo de Trabajo Integrado

Cómo conectar SQL Server, R y Power BI para un análisis de datos completo.

La Triple Conexión: SQL Server, R y Power BI

Flujo de Trabajo Integrado

SQL Server

Motor de Almacenamiento

R

Motor de Análisis Estadístico

Power BI

Visualización de Resultados

SQL Server

En SQL Server almacenamos y gestionamos los datos censales. Utilizamos consultas SQL para extraer información de bases de datos grandes y complejas de manera eficiente.

  • Almacenamiento de datos estructurados
  • Consultas SQL para extracción
  • Gestión de grandes volúmenes
  • Seguridad y permisos de acceso

R

Con R, aplicamos modelos predictivos para analizar los datos, como regresión lineal, árboles de decisión y clustering. R nos ayudó a obtener resultados precisos a partir de los datos extraídos de SQL Server.

  • Análisis estadístico avanzado
  • Modelos predictivos
  • Integración con SQL Server
  • Visualizaciones preliminares

Power BI

Con Power BI, creamos visualizaciones interactivas y dashboards para presentar los resultados de manera clara y comprensible. Power BI nos permitió interpretar los resultados obtenidos en R y presentarlos visualmente para facilitar la toma de decisiones.

  • Dashboards interactivos
  • Visualizaciones avanzadas
  • Presentación de resultados
  • Compartir y colaborar

Comandos Esenciales de SQL Server

Referencia completa de los comandos más utilizados en SQL Server para administración y análisis de datos.

DDL - Estructura
DML - Datos
Consultas
Funciones
Avanzados

DDL - Estructura de Base de Datos

Comandos para definir la estructura de la base de datos:

CREATE DATABASE

Crea una nueva base de datos
CREATE DATABASE nombre_base_datos;
CREATE DATABASE CensoDB;

CREATE TABLE

Crea una nueva tabla
CREATE TABLE nombre_tabla (columna1 tipo, columna2 tipo, ...);
CREATE TABLE Hogares (
    ID_Hogar INT PRIMARY KEY,
    Provincia VARCHAR(100),
    Numero_Dormitorios INT,
    Tenencia_Vivienda VARCHAR(50),
    Acceso_Agua VARCHAR(50),
    Presupuesto_Hogar DECIMAL(12,2),
    Fecha_Encuesta DATE
);

ALTER TABLE

Modifica la estructura de una tabla
ALTER TABLE nombre_tabla ACCION;
ALTER TABLE Hogares ADD Numero_Personas INT;
ALTER TABLE Hogares ALTER COLUMN Presupuesto_Hogar DECIMAL(14,2);

DML - Manipulación de Datos

Comandos para manipular datos en las tablas:

INSERT INTO

Inserta filas en una tabla
INSERT INTO tabla (col1, col2, ...) VALUES (val1, val2, ...);
INSERT INTO Hogares (ID_Hogar, Provincia, Numero_Dormitorios, Tenencia_Vivienda, Acceso_Agua, Presupuesto_Hogar, Fecha_Encuesta)
VALUES (1, 'Pichincha', 3, 'Propia pagada', 'Red pública', 450.75, '2022-06-01');

UPDATE

Actualiza datos existentes
UPDATE tabla SET columna = valor WHERE condición;
UPDATE Hogares 
SET Presupuesto_Hogar = 500.00 
WHERE Provincia = 'Pichincha';

DELETE

Elimina filas de una tabla
DELETE FROM tabla WHERE condición;
DELETE FROM Hogares 
WHERE Provincia = 'Manabí';

Consultas y Filtrado

Comandos para consultar y filtrar datos:

SELECT

Consulta datos de una tabla
SELECT columnas FROM tabla WHERE condición;
SELECT * FROM Hogares;
SELECT Provincia, Presupuesto_Hogar FROM Hogares
WHERE Numero_Dormitorios >= 3;

WHERE

Filtra filas mediante condiciones
SELECT ... WHERE condición;
SELECT * FROM Hogares WHERE Provincia = 'Manabí';
SELECT * FROM Hogares WHERE Presupuesto_Hogar BETWEEN 300 AND 600;
SELECT * FROM Hogares WHERE Provincia IN ('Pichincha','Manabí');
SELECT * FROM Hogares WHERE Tenencia_Vivienda LIKE '%propia%';

ORDER BY

Ordena resultados
SELECT ... ORDER BY columna [ASC|DESC];
SELECT Provincia, Presupuesto_Hogar
FROM Hogares
ORDER BY Presupuesto_Hogar DESC;

Funciones y Transformaciones

Funciones para transformar y manipular datos:

CAST / CONVERT

Convierte tipos de datos
CAST(expresión AS tipo) o CONVERT(tipo, expresión)
SELECT CAST(Presupuesto_Hogar AS INT) AS PresupuestoEntero FROM Hogares;
SELECT TRY_CAST(Presupuesto_Aprobado AS DECIMAL(12,2)) FROM Proyectos;

ISNULL / COALESCE

Maneja valores NULL
ISNULL(expresión, valor_sustituto)
SELECT ISNULL(Presupuesto_Hogar, 0) AS Presupuesto FROM Hogares;
SELECT COALESCE(Comentario, 'Sin comentario') FROM Evaluaciones;

Funciones de Texto

Limpia y transforma texto
REPLACE, LTRIM, RTRIM, TRIM, SUBSTRING, LEN
SELECT REPLACE(Progreso_Proyecto, '%','') FROM Proyectos;
SELECT LTRIM(RTRIM(Fecha_Fin_Real)) FROM Proyectos;
SELECT SUBSTRING(Nombre_Proyecto, 1, 20) FROM Proyectos;

Comandos Avanzados

Comandos para operaciones avanzadas y administración:

Índices

Mejora velocidad de consultas
CREATE INDEX nombre ON tabla(columna);
CREATE INDEX idx_provincia ON Hogares(Provincia);
DROP INDEX idx_provincia ON Hogares;

Vistas

Crea consultas guardadas como vistas
CREATE VIEW nombre AS consulta;
CREATE VIEW vw_Hogares_Costa AS
SELECT * FROM Hogares WHERE Provincia IN ('Manabí', 'Esmeraldas');

Transacciones

Asegura integridad de operaciones múltiples
BEGIN TRANSACTION; ... COMMIT/ROLLBACK;
BEGIN TRANSACTION;
UPDATE Proyectos SET Presupuesto_Ejecutado = Presupuesto_Ejecutado + 1000 WHERE ID_Proyecto = 5;
-- si OK
COMMIT;
-- si falla
ROLLBACK;

Ejemplos Prácticos de SQL

A continuación, se muestran ejemplos reales de consultas SQL utilizadas para extraer y analizar datos del censo:

Consultas Básicas
Dashboard Empleo
Consultas Avanzadas

Consultas Básicas de Conteo

Estas consultas permiten obtener conteos básicos de hogares y personas en la base de datos censal:

Número de Hogares
SELECT COUNT(INH)
FROM [BDD_HOG_CPV2022_CANT]
WHERE INH <> 00

Resultado Esperado:

Esta consulta devuelve el número total de hogares en la base de datos, excluyendo aquellos con valor 00 en el campo INH.

Número de Personas
SELECT COUNT(P00)
FROM BDD_POB_CPV2022_CANT

Consultas para Dashboard de Empleo

Estas consultas fueron utilizadas para generar el dashboard de empleo del censo 2022:

Población en Edad para Trabajar (15+ años)
SELECT COUNT(*) AS poblacion_edad_trabajar
FROM BDD_POB_CPV2022_CANT 
WHERE P03 >= 15
Fuerza de Trabajo por Área Urbana/Rural
SELECT 
    h.AUR AS area,
    CASE h.AUR 
        WHEN '1' THEN 'Urbana' 
        WHEN '2' THEN 'Rural' 
    END AS area_nombre,
    COUNT(*) AS fuerza_trabajo
FROM BDD_POB_CPV2022_CANT p
JOIN BDD_HOG_CPV2022_CANT h ON p.ID_VIV = h.ID_VIV AND p.ID_HOG = h.ID_HOG
WHERE p.P03 >= 15 AND p.CONDACT1 IN ('2', '3')
GROUP BY h.AUR

Consultas Avanzadas

Consultas más complejas que utilizan técnicas avanzadas de SQL:

Consulta con WITH para Datos Agregados
WITH DatosAgregados AS (
    SELECT 
        h.AUR AS Area,
        COUNT(*) AS Poblacion_Total,
        SUM(CASE WHEN p.CONDACT1 IN ('2', '3') THEN 1 ELSE 0 END) AS Fuerza_Trabajo,
        SUM(CASE WHEN p.CONDACT1 = '2' THEN 1 ELSE 0 END) AS Ocupados,
        SUM(CASE WHEN p.CONDACT1 = '3' THEN 1 ELSE 0 END) AS Desocupados
    FROM BDD_POB_CPV2022_CANT p
    JOIN BDD_HOG_CPV2022_CANT h ON p.ID_VIV = h.ID_VIV AND p.ID_HOG = h.ID_HOG
    WHERE p.P03 >= 15
    GROUP BY h.AUR
)
SELECT 
    CASE Area WHEN '1' THEN 'Urbana' WHEN '2' THEN 'Rural' END AS Area,
    'Población en edad para trabajar' AS Indicador,
    Poblacion_Total AS Valor
FROM DatosAgregados

Actividades Prácticas Realizadas

Conexión SQL Server y R

Los estudiantes aprendieron a conectar R con SQL Server utilizando el paquete odbc para extraer los datos censales. Esto permitió trabajar directamente con grandes volúmenes de datos sin necesidad de hacer importaciones manuales.

# Ejemplo de conexión R a SQL Server
library(odbc)
library(DBI)

# Establecer conexión
con <- dbConnect(odbc::odbc(), 
                 Driver = "SQL Server", 
                 Server = "nombre_servidor",
                 Database = "nombre_base_datos",
                 UID = "usuario",
                 PWD = "contraseña")

# Ejecutar consulta
datos <- dbGetQuery(con, "SELECT * FROM tabla_censal")

Modelos Predictivos

Durante la clase, los estudiantes aplicaron regresión lineal para predecir el estado civil de las personas y árboles de decisión para clasificar el empleo según características como edad y dificultades funcionales.

# Ejemplo de regresión lineal en R
modelo_lineal <- lm(estado_civil ~ edad + ingresos + educacion, 
                    data = datos)

# Resumen del modelo
summary(modelo_lineal)

Clustering para Agrupación de Datos

El clustering fue utilizado para agrupar datos según características similares, como el nivel educativo o las dificultades funcionales. Este análisis permitió segmentar la población en grupos con comportamientos similares.

# Ejemplo de clustering en R
# Preparar datos para clustering
datos_cluster <- datos[, c("educacion", "dificultades_funcionales", "edad")]
datos_cluster <- scale(datos_cluster)

# Aplicar k-means clustering
set.seed(123)
resultados_kmeans <- kmeans(datos_cluster, centers = 4)

Recordatorios Importantes

Nombre del Servidor

Recuerda siempre el nombre de tu servidor cuando conectes R a SQL Server.

Comandos SQL

Entiende bien los comandos SQL: Saber cómo usar JOIN, WHERE, y GROUP BY te facilitará la extracción de datos correctos.

Modelos de Machine Learning

Elige el modelo de Machine Learning adecuado: Regresión cuando tienes una variable continua y clasificación cuando trabajas con categorías.

Recursos Adicionales

Visualización de Datos: Ejemplo Real

Para entender cómo las instituciones pueden usar estos datos, te invitamos a explorar un gran ejemplo de visualización:

Sistema Unificado y Universal de Seguimiento Nominal

Ejemplo de dashboard interactivo para análisis de datos

Mensaje Final

El mundo de Big Data está en constante evolución. Para sobresalir en este campo, necesitas paciencia, constancia y un análisis detallado basado en tu experiencia. ¡Recuerda que el análisis de datos es un proceso continuo y que siempre hay algo nuevo por aprender!

Gracias por tu participación activa en esta guía. Sigue explorando y aplicando lo aprendido para mejorar tus habilidades y enfrentar nuevos retos en el mundo de Big Data.

Guía Completa: SQL Server, R y Power BI

© 2023 - Una guía para mejores prácticas en análisis de datos

Share
© 2020 ACOSCONSULTING , Quito-Ecuador
Creado con Webnode
¡Crea tu página web gratis! Esta página web fue creada con Webnode. Crea tu propia web gratis hoy mismo! Comenzar