Evaluación 4 – Minería de Datos

Constanza Ahumada - David Ortiz

Diciembre 2025

1 Introducción

En este informe se realiza un estudio descriptivo y predictivo utilizando la base de datos COMPRAS en Oracle y archivos CSV proporcionados por el docente. Se trabajan tres herramientas principales: R (RMarkdown), KNIME y Python, aplicando los conceptos de minería de datos y del proceso KDD (Descubrimiento de Conocimiento en Bases de Datos) vistos en clases.

La asignatura de Minería de Datos plantea la utilización de técnicas y herramientas para extraer conocimiento útil y comprensible desde grandes volúmenes de datos, con el propósito de apoyar la toma de decisiones en las organizaciones. En este contexto, la evaluación se enfoca en integrar distintas tecnologías (Oracle, KNIME y Python) para recorrer de forma práctica las etapas más relevantes del proceso KDD.

2 Marco teórico: Minería de Datos, KDD y técnicas de análisis

2.1 Minería de Datos y objetivos

La Minería de Datos se entiende como un conjunto de técnicas y herramientas orientadas a descubrir conocimiento previamente desconocido, pero útil y comprensible, a partir de grandes cantidades de datos almacenados en distintos formatos. Este proceso se realiza de manera semi–automática, permitiendo identificar patrones, tendencias y comportamientos que no son evidentes a simple vista.

Entre sus características destacan:

  • Trabajo automatizado o semi–automatizado sobre grandes volúmenes de datos.
  • Generación de conocimiento tanto descriptivo (qué está ocurriendo) como predictivo (qué podría ocurrir en el futuro).
  • Apoyo directo a la toma de decisiones, orientando estrategias comerciales, operacionales o de servicio al cliente.

En el ámbito empresarial, la minería de datos se utiliza para identificar segmentos de clientes, detectar comportamientos de compra, anticipar riesgos y optimizar recursos, entre otros usos.

2.2 Proceso KDD y etapas

El KDD (Knowledge Discovery in Databases) se define como un proceso no trivial, iterativo e interactivo para identificar patrones válidos, novedosos, potencialmente útiles y comprensibles a partir de los datos. La minería de datos corresponde específicamente a una de las etapas (la etapa 4), pero el proceso completo considera varias fases:

  • Etapa 0 – Dominio del problema: comprensión del contexto de negocio, formulación de objetivos y preguntas clave. Incluye la recopilación inicial de datos desde distintas fuentes.
  • Etapa 1 – Selección (Datos Objetivos): elección de las tablas, variables y registros que serán relevantes para el análisis, de acuerdo con los objetivos definidos.
  • Etapa 2 – Limpieza (Datos Procesados): tratamiento de datos faltantes, inconsistencias, errores y valores atípicos. Su finalidad es asegurar la calidad y fiabilidad de la información.
  • Etapa 3 – Transformación (Datos Transformados): generación de nuevas variables, reducción de dimensiones y preparación de los datos en el formato adecuado para aplicar las técnicas de minería.
  • Etapa 4 – Minería de Datos (Patrones): aplicación de algoritmos y técnicas (clasificación, regresión, asociación, agrupamiento, etc.) para descubrir patrones o modelos.
  • Etapa 5 – Interpretación y Evaluación (Conocimiento): análisis e interpretación de los resultados, validación con el dominio del problema y comunicación del conocimiento obtenido, pudiendo regresar a etapas anteriores si se requieren ajustes.

Este trabajo aborda principalmente las etapas 1 a 5, utilizando la base COMPRAS y archivos CSV para ejemplificar el ciclo completo.

2.3 Técnicas descriptivas, predictivas y prescriptivas

Las técnicas de minería de datos se pueden agrupar, a grandes rasgos, en tres tipos:

  • Técnicas descriptivas: buscan resumir y entender lo que ocurre en los datos sin generar predicciones explícitas. Aquí se encuentran:
    • Asociación: identifica relaciones entre ítems o eventos, por ejemplo patrones de compra conjuntos en un supermercado.
    • Agrupamiento (Clustering): segmenta los datos en grupos homogéneos según su similitud, útil para segmentar clientes o detectar perfiles de comportamiento.
  • Técnicas predictivas: permiten anticipar valores o comportamientos futuros a partir de datos históricos. Incluyen:
    • Clasificación: asignación de ejemplos a clases o categorías (por ejemplo, clientes de alto, medio o bajo valor).
    • Regresión: predicción de valores numéricos (por ejemplo, tiempo de venta de una propiedad).
    • Detección de anomalías: identificación de registros que se desvían fuertemente del comportamiento esperado (por ejemplo, transacciones potencialmente fraudulentas).
  • Técnicas prescriptivas: se orientan a recomendar o automatizar decisiones, considerando escenarios de optimización y simulación. Se relacionan con:
    • Automatización: sistemas que toman decisiones en función de reglas aprendidas (por ejemplo, recomendaciones de productos).
    • Optimización: búsqueda de configuraciones que maximicen o minimicen un objetivo (por ejemplo, mejorar un proceso modelado en BPMN).

2.4 Aprendizaje automático (Machine Learning) y tipos de aprendizaje

El Aprendizaje Automático (Machine Learning) es el conjunto de técnicas que permiten que los computadores aprendan patrones a partir de los datos y tomen decisiones o realicen predicciones sin ser programados de forma explícita para cada caso.

Entre los tipos de aprendizaje se destacan:

  • Aprendizaje supervisado: trabaja con datos etiquetados. El modelo aprende a predecir una etiqueta (clase o valor) a partir de ejemplos históricos. Ejemplo: modelos de clasificación como árboles de decisión para segmentar clientes.
  • Aprendizaje no supervisado: trabaja sin etiquetas de salida conocidas. Se utiliza para encontrar estructura o grupos en los datos, como en técnicas de clustering.
  • Aprendizaje por refuerzo: el modelo aprende mediante ensayo y error, recibiendo recompensas o penalizaciones según la calidad de sus decisiones, adaptándose con el tiempo.

En este informe, el modelo de árbol de decisión implementado en KNIME es un ejemplo de técnica predictiva de clasificación supervisada, mientras que el análisis exploratorio de Python se acerca a un enfoque descriptivo con énfasis en calidad de datos y distribución de una variable relevante (edad de los clientes).

3 Metodología y relación con el proceso KDD

La metodología general de trabajo se alinea con las etapas del proceso KDD:

  • En la Etapa 0 (Dominio del problema) se definió como objetivo principal analizar el comportamiento de las ventas y de los clientes de la confitería, a partir de la base COMPRAS y de archivos CSV complementarios.
  • En la Etapa 1 (Selección) se escogieron las tablas TRANSACCIONES, CLIENTES y PRODUCTOS desde Oracle, junto con el archivo clientes.csv para el análisis posterior en Python.
  • Durante la Etapa 2 (Limpieza) se abordó la depuración de datos en KNIME (tratamiento de nulos, unificación de claves, filtros de calidad) y en Python (conversión de tipos, tratamiento de valores faltantes en la variable EDAD).
  • En la Etapa 3 (Transformación) se construyeron variables derivadas como MONTO_TOTAL, número de transacciones, ticket promedio y segmentos de clientes, tanto en Oracle como en KNIME.
  • En la Etapa 4 (Minería de datos) se aplicó un modelo de Árbol de Decisión en KNIME para clasificar a los clientes en segmentos de valor (Alto, Medio, Bajo), trabajando con datos agregados.
  • Finalmente, en la Etapa 5 (Interpretación) se analizaron los resultados obtenidos en cada herramienta, extrayendo conclusiones y propuestas de uso para la organización.

De esta forma, el informe combina herramientas distintas (SQL en RMarkdown, workflow visual en KNIME y scripting en Python) para recorrer el ciclo completo de descubrimiento de conocimiento a partir de los datos.

4 Estudio descriptivo con Oracle

En esta sección se realiza un estudio descriptivo utilizando directamente la base de datos COMPRAS en Oracle. El objetivo es caracterizar las ventas por región y categoría de producto, integrando al menos tres tablas: TRANSACCIONES, CLIENTES y PRODUCTOS.

Se calculan los siguientes indicadores:

  • MONTO_TOTAL: suma del importe de las transacciones por región y categoría.
  • N_TRANSACCIONES: cantidad de transacciones registradas en cada combinación.
  • N_CLIENTES: número de clientes distintos asociados a esas ventas.

Estos indicadores permiten identificar qué regiones y categorías concentran mayor volumen de ventas y cuántos clientes participan en dichas transacciones.

##         REGION         CATEGORIA MONTO_TOTAL N_TRANSACCIONES N_CLIENTES
## 1       Bogotá Electrodomésticos     1713591             851        165
## 2       Bogotá             Hogar     1574027             890        167
## 3       Bogotá        Tecnología     1615461             892        167
## 4 Buenos Aires Electrodomésticos     1532559             772        167
## 5 Buenos Aires             Hogar     1499834             829        164
## 6 Buenos Aires        Tecnología     1680741             890        166

4.1 Interpretación de resultados descriptivos

A partir de la tabla y del gráfico generados, se puede observar que existe un subconjunto de regiones que concentra la mayor parte del monto total de ventas, mientras que otras regiones presentan volúmenes más reducidos. Esto es coherente con la distribución geográfica de la demanda y permite identificar dónde se encuentran los mercados más relevantes para la confitería.

El análisis combinado de MONTO_TOTAL, N_TRANSACCIONES y N_CLIENTES permite distinguir:

  • Regiones con alto monto total y muchos clientes, que representan zonas de alta importancia estratégica.
  • Regiones con alto monto pero pocos clientes, que pueden corresponder a clientes grandes o mayoristas.
  • Regiones con bajo monto y pocas transacciones, donde podría evaluarse si conviene potenciar acciones comerciales o mantener un nivel de operación más acotado.

En términos generales, el estudio descriptivo en Oracle entrega una primera visión global del comportamiento de las ventas, sirviendo como punto de partida para el modelamiento predictivo aplicado en KNIME.

5 Análisis Predictivo con KNIME

En esta sección se presenta el proceso de minería de datos realizado en la plataforma KNIME Analytics Platform. El objetivo fue construir un modelo predictivo capaz de clasificar a los clientes en segmentos de valor (Alto, Medio, Bajo) basándose en su comportamiento transaccional histórico.

5.1 1. Flujo de Trabajo (Workflow)

El proceso comenzó con la conexión a la base de datos Oracle para extraer las tablas CLIENTES, TRANSACCIONES y PRODUCTOS. Se realizaron procesos de limpieza, unión de tablas (Joins) y agregación (GroupBy) para calcular variables clave como el Monto Total, el Número de Transacciones y el Ticket Promedio por cliente.

Posteriormente, se definieron reglas de negocio (Rule Engine) para etiquetar a los clientes según tramos de MONTO_TOTAL y se entrenó un modelo de Árbol de Decisión utilizando estas variables como predictores.

Figura 1: Flujo de trabajo ETL y Modelado en KNIME
Figura 1: Flujo de trabajo ETL y Modelado en KNIME


5.2 2. Modelo Generado: Árbol de Decisión

Se utilizó el algoritmo Decision Tree Learner como técnica de clasificación supervisada. Como se observa en el diagrama del árbol, la variable MONTO_TOTAL resultó ser el discriminante principal. El modelo identificó un punto de corte claro para separar los segmentos de clientes, generando reglas del tipo:

  • Si MONTO_TOTAL es mayor a cierto umbral → Cliente de segmento Alto.
  • Si MONTO_TOTAL está en un rango intermedio → Cliente de segmento Medio.
  • Si MONTO_TOTAL es bajo → Cliente de segmento Bajo.
Figura 2: Visualización del Árbol de Decisión
Figura 2: Visualización del Árbol de Decisión


5.3 3. Evaluación del Modelo

Para validar el modelo, se utilizó una partición de datos Training/Test y una matriz de confusión. Los resultados indican una precisión (Accuracy) del 99.33%, con un índice Kappa de 0.982, lo que sugiere un modelo altamente confiable con muy pocos errores de clasificación en el conjunto de prueba.

Figura 3: Matriz de Confusión y Métricas de Desempeño
Figura 3: Matriz de Confusión y Métricas de Desempeño


5.4 4. Resultados de la Predicción

Finalmente, se aplicó el modelo para predecir el segmento de valor de toda la cartera de clientes. La distribución obtenida muestra que la mayoría de los clientes se concentra en el segmento Medio, seguido por el segmento Bajo, mientras que el segmento Alto es el más reducido y exclusivo.

Figura 4: Distribución de clientes por segmento predicho
Figura 4: Distribución de clientes por segmento predicho

Desde una perspectiva de negocio, esta clasificación permite:

  • Priorizar estrategias de fidelización y beneficios específicos para el segmento Alto.
  • Diseñar campañas masivas o de up–selling para el segmento Medio.
  • Evaluar acciones para incrementar la participación y frecuencia de compra del segmento Bajo, o bien mantener una estrategia de bajo costo de atención para dicho grupo.

5.5 5. Vinculación con KDD y técnicas de minería

El flujo de KNIME implementa de forma explícita la Etapa 4 del proceso KDD (Minería de datos), utilizando una técnica predictiva de clasificación. El Árbol de Decisión es un ejemplo claro de aprendizaje supervisado, en el que el modelo aprende a partir de registros históricos etiquetados con el segmento de valor del cliente.

Este modelo entrega reglas simples e interpretables, lo que facilita la Etapa 5 de KDD (Interpretación), ya que se pueden explicar de manera comprensible las decisiones tomadas por el algoritmo y alinearlas con el conocimiento del negocio.

6 Estudio con Python

Para finalizar, se utiliza el lenguaje de programación Python (integrado mediante la librería reticulate) para realizar un análisis exploratorio de los datos contenidos en los archivos CSV. En particular, se analiza la variable EDAD del archivo clientes.csv, con énfasis en la calidad de datos, estadísticas descriptivas y detección de posibles valores atípicos.

6.1 Análisis 1 en Python: distribución de la edad de los clientes (clientes.csv)

6.1.1 Interpretación del análisis 1 en Python

El análisis exploratorio realizado en Python sobre el archivo clientes.csv complementa el estudio descriptivo previo, enfocándose específicamente en la variable EDAD de los clientes.

En primer lugar, el script verifica la calidad del dato, diferenciando entre registros con edad válida y registros con edad faltante. Esto permite dimensionar rápidamente si la información es confiable para el análisis o si se requiere algún tipo de corrección o depuración adicional.

A partir de las estadísticas descriptivas se observa que la distribución de la edad se concentra en rangos propios de adultos jóvenes y de mediana edad, lo que es coherente con el público objetivo de una confitería. La media y la mediana se ubican en valores intermedios, lo que indica que no existe una asimetría extrema hacia clientes muy jóvenes o muy mayores.

La tabla de frecuencias por rangos de edad muestra que los tramos intermedios concentran la mayor parte de la cartera, mientras que los segmentos de edades muy bajas o muy altas representan un porcentaje menor. Esta información es útil para la toma de decisiones comerciales, por ejemplo, al definir campañas de marketing, promociones o productos orientados a los grupos etarios más relevantes.

Desde el punto de vista gráfico, el histograma de la edad permite visualizar la forma de la distribución, identificando de manera intuitiva los rangos donde se acumulan más clientes. El boxplot complementa este análisis mostrando la dispersión de los datos y los posibles valores atípicos detectados mediante el criterio del IQR (rango intercuartílico). Aunque pueden existir algunos valores extremos, estos no modifican de forma relevante la tendencia general de la población.

En conjunto, este primer análisis en Python demuestra el uso integrado de herramientas de análisis de datos para:

  1. Evaluar la calidad de la información.
  2. Resumir numéricamente el comportamiento de una variable clave (EDAD).
  3. Visualizar su distribución y detectar posibles outliers.
  4. Obtener información accionable sobre el perfil etario de los clientes.

6.2 Análisis 2 en Python: comportamiento de las transacciones (transacciones.csv)

6.2.1 Interpretación del análisis 2 en Python

En el segundo análisis se trabaja con el archivo transacciones.csv. En primer lugar, se identifican las columnas disponibles y se selecciona una variable numérica representativa (por ejemplo, el importe o monto de cada transacción), sobre la cual se calculan estadísticas descriptivas básicas (promedio, mediana, desviación estándar, percentiles, etc.).

Posteriormente, se construye un gráfico de barras que muestra la suma de dicha variable por una categoría relevante del archivo (por ejemplo, tipo de transacción, sucursal, canal o similar, según las columnas presentes en el dataset). Este gráfico permite identificar rápidamente qué categorías concentran la mayor parte del monto transado y cuáles tienen una participación menor en el volumen total.

Este segundo análisis complementa al primero (enfocado en la edad de los clientes), ya que aporta una visión descriptiva del comportamiento de las transacciones. En conjunto, ambos análisis permiten:

  1. Conocer el perfil etario de la cartera de clientes.
  2. Entender cuáles tipos de transacciones o categorías aportan más al monto total.
  3. Entregar insumos concretos para priorizar productos, canales o segmentos de clientes que generan mayor impacto en el negocio.

7 Conclusiones

El presente informe integró tres herramientas principales —RMarkdown con Oracle, KNIME y Python— para recorrer de forma práctica las etapas centrales del proceso KDD sobre la base de datos COMPRAS y los archivos CSV asociados.

En primer lugar, el estudio descriptivo en Oracle entregó una visión global de las ventas por región y categoría de producto, permitiendo identificar dónde se concentran los mayores montos transados, cuántas transacciones se realizan y cuántos clientes participan en ellas. Esto aporta un contexto claro del comportamiento comercial general de la confitería.

Posteriormente, en KNIME se implementó un flujo completo de preparación de datos y se construyó un modelo de árbol de decisión para clasificar a los clientes en segmentos de valor (Alto, Medio, Bajo). Las métricas de desempeño obtenidas —alta precisión e índice Kappa elevado— indican que el modelo es consistente y útil como herramienta de apoyo para la gestión comercial y la priorización de clientes.

Finalmente, en Python se profundizó el análisis exploratorio sobre los archivos CSV. Por un lado, se estudió la variable EDAD de los clientes, evaluando la calidad del dato, su distribución y la presencia de valores atípicos. Por otro lado, se analizó el comportamiento de las transacciones, describiendo estadísticamente el importe y visualizando los productos que concentran los mayores montos de venta. En conjunto, estos análisis complementan la visión descriptiva y aportan insumos concretos para futuras decisiones de marketing y segmentación.

Desde la perspectiva de la minería de datos, el trabajo evidencia el uso combinado de técnicas:

  • Descriptivas, para resumir y comprender el comportamiento de ventas y clientes.
  • Predictivas, mediante el modelo de clasificación desarrollado en KNIME.
  • Y un primer acercamiento a la interpretación y prescripción, al proponer posibles usos de los resultados para la toma de decisiones comerciales.

En términos generales, la evaluación permite consolidar los conceptos vistos en clases y demuestra cómo, a partir de datos transaccionales, es posible generar conocimiento útil para apoyar la gestión y la planificación de una organización real o simulada.

8 Trabajo futuro

Como líneas de mejora o trabajo futuro, se podrían considerar las siguientes acciones:

  • Incorporar nuevas variables al modelo (por ejemplo, frecuencia de compra, antigüedad del cliente, canal de venta, tamaño del ticket promedio), con el fin de enriquecer la segmentación y mejorar la capacidad explicativa del modelo.
  • Explorar técnicas adicionales de minería de datos, como agrupamiento (clustering), para comparar los segmentos obtenidos de manera supervisada con grupos descubiertos de forma no supervisada, identificando patrones emergentes en el comportamiento de los clientes.
  • Desarrollar tableros de visualización interactivos (por ejemplo, en Power BI o herramientas web) que permitan a los usuarios de negocio explorar la información de manera dinámica, filtrando por periodos, productos, segmentos de clientes y variables clave.
  • Evaluar periódicamente la actualización y recalibración del modelo predictivo, de modo que se adapte a cambios en el comportamiento de los clientes, en la oferta de productos o en el contexto del mercado.
  • Integrar estos análisis con otros sistemas de la organización (por ejemplo, sistemas de ventas o de fidelización), avanzando hacia una estrategia de analítica continua orientada a la toma de decisiones basada en datos.

De esta forma, la evaluación no solo cumple con los requerimientos de la asignatura, sino que también sienta las bases para proyectos de análisis de datos más complejos y cercanos a escenarios reales de la industria.