Transformación de datos con Pentaho: parte 2
Clase 21 de 25 • Curso de Fundamentos de ETL con Python y Pentaho
Resumen
¿Cómo transformar datos con Pentaho de manera eficiente?
Pentaho es una poderosa herramienta open source para el manejo de ETLs, ideal para transformar datasets. A continuación, exploraremos cómo manejar transformaciones con Pentaho de una manera efectiva, siguiendo un flujo de trabajo meticuloso que nos permitirá enriquecer nuestros datos e integrarlos en un modelo completo.
¿Cómo filtrar y secuenciar datos?
El primer paso esencial en la manipulación de datos es filtrar y establecer secuencias apropiadas para garantizar que solo trabajamos con información relevante.
-
Filtro de filas: Se utiliza el filtro de rows para seleccionar únicamente registros donde el campo "alfa" no sea nulo.
# Pseudo-código en base a la clase filtro = filtro_filas(main, condiciones={'alfa': 'nonull'})
-
Secuencia de identificadores: Aplicar una secuencia para generar un ID único, "idCountry", para los países. Esto nos permitirá más adelante integrarlos con otros conjuntos de datos.
# Configuración de la secuencia secuencia = aplicar_secuencia(filtro, nombre='addSequenceCountry', inicio=1, fin=9999)
-
Selección de valores: Seleccionar solo las columnas necesarias como "idCountry", "alfa", "país", "región" y "subregión" para optimizar el dataset.
# Selección de columnas select_values(secuencia, columnas_necesarias=['idCountry', 'alfa', 'país', 'región', 'subregión'])
¿Cómo ordenar y obtener valores únicos?
El ordenamiento y limpieza de duplicados es crucial para mantener la integridad de los datos.
-
Ordenamiento de filas: Primero, ordenamos las filas por los campos "flow", "year" y "quantity" para prepararlos para procesos posteriores que requieran datos ordenados.
# Ejemplo de ordenamiento por flow sort_rows(flow_data, campo_orden='flow', tipo_orden='ascendente')
-
Extracción de valores únicos: Posteriormente, utilizamos unique_rows para obtener únicamente los valores únicos de "flow", "year" y "quantity".
unique_values = obtener_filtrado_unico(datos_ordenados, campo='flow')
¿Cómo agregar secuencias a nuestros datos?
La incorporación de secuencias numéricas a los datos ayuda a establecer identificadores únicos necesarios para futuras integraciones.
-
Secuencia de "flow": Creamos un identificador único para "flow", nombrándolo "id flow".
secuencia_flow = agregar_secuencia(flow_unico, nombre='id flow')
-
Identificadores para "year" y "quantity": Repetimos el proceso para "year" y "quantity", asegurándonos de renombrar los IDs de manera clara y comprensible.
secuencia_year = agregar_secuencia(year_unico, nombre='id year') secuencia_quantity = agregar_secuencia(quantity_unico, nombre='id quantity')
-
Selección final de valores: Seleccionamos los campos relevantes y los preparamos para análisis e integraciones futuras.
select_values(final, columnas=['id flow', 'flow', 'id year', 'year', 'id quantity', 'quantity name'])
¿Qué hemos aprendido y cómo seguir adelante?
Manejar Pentaho permite realizar transformaciones complejas de manera visual y ordenada, ahorrando tiempo y reduciendo errores al trabajar con grandes volúmenes de datos. Los procesos aquí descritos son paralelos a los realizados en herramientas como pandas, pero con la ventaja de una interfaz gráfica que permite realizar dichas tareas de manera intuitiva. ¡Continúa explorando y mejorando tus habilidades con Pentaho y similares! Te invitamos a seguir avanzado en el proceso de transformación de datos, culminando nuestro dataset y realizando integraciones clave en clases futuras.