Análisis de datos y big data

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
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.
¿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 de Base de Datos
Comandos para definir la estructura de la base de datos:
CREATE DATABASE
CREATE DATABASE CensoDB;
CREATE TABLE
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
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
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
UPDATE Hogares SET Presupuesto_Hogar = 500.00 WHERE Provincia = 'Pichincha';
DELETE
DELETE FROM Hogares WHERE Provincia = 'Manabí';
Consultas y Filtrado
Comandos para consultar y filtrar datos:
SELECT
SELECT * FROM Hogares; SELECT Provincia, Presupuesto_Hogar FROM Hogares WHERE Numero_Dormitorios >= 3;
WHERE
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
SELECT Provincia, Presupuesto_Hogar FROM Hogares ORDER BY Presupuesto_Hogar DESC;
Funciones y Transformaciones
Funciones para transformar y manipular datos:
CAST / CONVERT
SELECT CAST(Presupuesto_Hogar AS INT) AS PresupuestoEntero FROM Hogares; SELECT TRY_CAST(Presupuesto_Aprobado AS DECIMAL(12,2)) FROM Proyectos;
ISNULL / COALESCE
SELECT ISNULL(Presupuesto_Hogar, 0) AS Presupuesto FROM Hogares; SELECT COALESCE(Comentario, 'Sin comentario') FROM Evaluaciones;
Funciones de Texto
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
CREATE INDEX idx_provincia ON Hogares(Provincia); DROP INDEX idx_provincia ON Hogares;
Vistas
CREATE VIEW vw_Hogares_Costa AS
SELECT * FROM Hogares WHERE Provincia IN ('Manabí', 'Esmeraldas');
Transacciones
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 de Conteo
Estas consultas permiten obtener conteos básicos de hogares y personas en la base de datos censal:
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.
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:
SELECT COUNT(*) AS poblacion_edad_trabajar FROM BDD_POB_CPV2022_CANT WHERE P03 >= 15
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:
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
Documentación SQL Server
Enlaces útiles para profundizar en SQL Server:
Recursos para R
Material adicional para aprender R:
Power BI Resources
Recursos para dominar Power BI:
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
